KamoCRM

ライブ・チェンジ・ログ

あらゆる機能、修正、改善、出荷時として掲載 打ち上げには何も戻らない.

17,447
総変更点
5,948
特徴:
5,271
フィックス
30
プロジェクト
プロジェクトによるフィルタ
すべてのプロジェクト17,447AIService243APIService174BillingService157ConversionService110DaemonService138DocsService223ESigService91EmailService572InitializerService329KBService151KlusterServices738MCPGatewayService238MediaService596RAGService79SecurityService1,843TranslateService62VOIPService249VectorService11kamo-apps26kamo-asterisk-support27kamo-capcha17kamo-capcha-widget4kamo-internal8,341kamo-login335kamo-marketing641kamo-nowww20kamo-register213kamo-shared-library1,649kamo-signer-monorepo56kamolos114
タイプ別フィルター
すべてのタイプBuild16CI523Chore773Docs3,254Feature5,948Fix5,271Other994Performance165Refactor278Revert23Style42Test159Upgrade1
October 22, 2026
PerformanceTranslateService

バックグラウンド作業はポッドごとに3つのエンジンスロットを使い、低優先度で送信されます

辞書同期中に、ポッドごとに1つのバックグラウンドスロットがエンジンの4つのストリームのうち3つを無効にしていた。バックグラウンド呼び出し者 (デフォルトの 100 秒以上の待ち時間: シンクロ、ヘルプ記事のスイープ) 現在はポッドごとに 3 つまで保持し、送信されます 優先度を「低」に設定した 4つのストリームのうち ...

Kamo·3d ago
PerformanceKlusterServices

4つのスレッドの4つのストリームと、チャットのための1つの自由なレーン

ノードの CPU クラスで測定し、辞書同期の自身のトラフィック (15 キーのチャンク) を使用しました。8 スレッドの1 ストリーム 1.5キー/秒 2つの8 1.8 4つの4 2.9 4つのチャンクを飛ばした 小さなバッチは8を使わない 4コアの4ストリームを実行し 8つの要求を受け入れます 4つのストリームのう...

Kamo·3d ago
PerformanceKlusterServices

ビーム 4 ラベル、ビーム 2 最大 64 トークン

コストはトークンxビームです。 古いエンジンとクラスターで測定されたまま実行: 1 ストリーム 77 chars/s と 2 ビーム4の短い文字列の115文字/秒。 Sentence-length テキストは固定ラベルの幅を必要としません(stray '&' タミル語) では、幅広のビームが 12 個のソーストークンと...

Kamo·4d ago
October 21, 2026
PerformanceSecurityService

Mortgageパイプラインは、クエリの手ごろな値で読み込まれ、取引は名前を変更し、2番目の融資を取ることができます

パイプラインの2つの読み物は、往復N+1でした。 - GET /mortgage-apps は plain AppMortgage 行をロードし、それぞれ 1 つずつ消火 @OneToOne(loanFile、ローン、プロパティ、ローンオリジナレーター) の逆にSELECT。 Hibernate は mappedBy...

Kamo·5d ago
October 19, 2026
Performancekamo-shared-library

会員の出金のための(source type, source id)によるインデックスメンバ notifications(IoTクローズアウトF15)

撤退によるソース読み取り(findBySourceTypeAndSourceId)とIoTアラームの撤退によるプレフィックス (StartingWith -> LIKE 'x%') は、メンバー主導のインデックスしかなかったため、テーブルを両方読みます。 レンジシャード ASC, ASC prefixはYugabyte...

Kamo·1w ago
October 11, 2026
PerformanceMCPGatewayService

著者がチェックされている間に読みやすいポインタが動く

chat read は、別の後に 3 つの MediaService コールを呼び出しました(ページ、内部コンテンツチェックのセッション、および読み取りポインター)。 セッションと著者がチェックされている間、ポインタは仮想スレッドに移動します。両方のページが読み込まれた後にのみ起動します。そのため、ポインタは、発信者を...

Kamo·2w ago
PerformanceMediaService

SI は内部のエンドポイントで "typing..." を表示し、メッセージのバッジは送信者のリクエストを解除します

- POST /api/media/internal/chat/typing {memberId, chatId, typing} (KamoAI内部シークレット、InteractionInternalAuth; /api/media/internal下、イングレッションが切り出し、APIゲートウェイがリザーブする:会...

Kamo·2w ago
Performancekamo-shared-library

1 id IN (... UNION ALL ...) として可視ノートの読み込みは、すべてのノート (KamoCollab CP05 タスク 15) のスキャンではなく、キーで縛られたインデックススキャンです

ビットマップのスキャンで Yugabyte は 3 つの ORed ブランチに応答します。 シーケンシャルスキャン(生産中のEXPLAIN)によるメモの異なる列 プレCP05 2 ブランチの述語が含まれています。 分岐ごとの1つの腕は保ちます 同じ行: idx note member、マスターと共有メモによる独自のメモ...

Kamo·2w ago
September 29, 2026
PerformanceMediaService

ターンのみのファンアウトは、ロスター、チケットID、会話タイトルを読みません

SP98-D-6. ChatFanoutService.prepareは、ロスタ、サポートチケットのID、および オンリーワン(Webサイト訪問者、AIを含む)を含む、すべてのリクエストの会話のタイトル ファンアウトを通して誰も指示し、それらのいずれかを使用しないエージェントのアウトリーチ、社会的接触):2つまたは 3...

Kamo·3w ago
September 28, 2026
PerformanceEmailService

テンプレートアイコンは、すべての送信ではなく、一度Batikを介して描画されます

インラインイメージ ひとつのメッセージ内でのみ図面をインポートするので、すべての人がそのメールを受け取った コンパステンプレートは、社会的および連絡先のアイコンの同じハンドフルを解読し、トランスコード 再び、送信パス(SP98-F-8)で同期的に。 ドローン PNG は、現在、埋め込まれた LRU に保管されます。 S...

Kamo·3w ago
September 25, 2026
PerformanceKlusterServices

6人のウィスパーの労働者および6人の要求されたCPU、従ってバッチ チャンクは実時間回転を行ないません

受諾はk3m1 (4つの実時間の流れ+ 1のバッチ)測定p95 17.9 sで実行します: バッチは1つを保持しました 4 人の労働者は、1 つは全回転の後ろに待っていました。 6人の労働者は一度にすべての5を実行します(タスク6ステップ7フォールバック).

Kamo·4w ago
PerformanceEmailService

ファイルごとに各 ics TZID を 1 回解決

Kamo·4w ago
September 23, 2026
PerformanceSecurityService

Commit logs.translation count を書き込み時に保持する

メニュー (コラム+部分的な友好的な索引、応用に 生産は既に)、******************************** (ワンタイムキャッチアップ、既に実行) 19,373行、すべての実質のカウントに上陸)。 ******************** は commit logs.translation co...

Kamo·4w ago
PerformanceSecurityService

Lean LeadVendorProduct が読み込まれるのではなく、8 ウェイエイジャーのfindById を使用します

Kamo-shared-library の修正の半分の呼び出し側:findById() 呼び出しの全てを切り替える LeadVendorProductセキュリティサービスのリポジトリは、どのリーンメソッドが実際に何をマッチするのか 読み込み中 (*************************************...

Kamo·4w ago
Performancekamo-shared-library

CommitLog は、メンテナンスされた翻訳 count を実行します

CommitLog.translationCount と************************ を追加 変更ログの翻訳バックフィルスイープのグループ BY ..HAVING スキャンを a に置き換えるライブラリ側 明白な索引されたWHERE。 DDLとカウンターのメンテナンス(CommitLogTransl...

Kamo·4w ago
Performancekamo-shared-library

Member rights applied は、違いだけを記述し、一括でロールを読み込む

同じファイルで、MemberRightsAppliedService に関連した2つの修正: 1.********************(recalcChunk経由) 会員の該当する行の1つごとに無条件に削除され、再発行される 彼らは走った。 SecurityService の MemberRightsBackfi...

Kamo·4w ago
Performancekamo-shared-library

LeadVendorProduct の org チェーンを単一 ID 読み取りで取得するのを止めて下さい

leadVendorProductのfindById()は、デフォルトEAGERベンダーを引っ張ります。これにより、Eager-fetches自体がその 独自の組織とその市場(再びITSを祝う) — 組織は @Inheritance(JOINED) なので、それらのすべてのホップは、ORG MTG を外部に接続して解決...

Kamo·4w ago
PerformanceSecurityService

パブリックチェンジログのコミットカウントをレジャーから読み、 COUNT(*) ではなく

pg stat statements:CommitLog c WHERE c.project から `SELECT COUNT(c) を出力する (:~33 公開プロジェクト) [AND c.commitTypeId = :t]` それぞれ100-200 ms で 1 日 ~140K 回 (生産で測定) この変更の前に...

Kamo·4w ago
PerformanceDaemonService

パブリック・チェンジログのコミットログのレジャーをフォールドして再カウントする

securityservice's create commit log ledger.sql (所有者として手作業で適用) を追加 commit log counts / commit log count deltas: 全体(プロジェクト、コミットタイプ)と commit logs で行がトリガーする append-...

Kamo·4w ago
PerformanceKBService

3つのホットクエリを一度に尋ねるのをやめる

3つのクエリpg stat statementsはkbserviceのトップ生産DBとして示しました 費用は、ループ(またはレガシーYugabyteDBを計画する)で尋ねることからすべて プランナーは悪意を寄せました) 単一のクエリが答えることができるもの: メニュー サイトマップ パブリックツリー/list/sin...

Kamo·4w ago
Performancekamo-shared-library

バッチ2の翻訳は、プランナーが行ごとに悪くなっていた

kbservice のパブリック KB エンドポイントとその翻訳-retry sweep KbArticleTranslation一度に1列のリポジトリ。 生産の pg stat statements は、以下の 2 つのコストを非常に異なるものにしました。 - findRealTranslationLocales(...

Kamo·4w ago
PerformanceSecurityService

エントリーページでは、パブリックチェンジログ全体ではなく3列読みます

pg stat statements は、データベースの一番上に公開された changelog の単一エントリを読み込みます。 距離:スラグのルックアップと2つの近隣のルックアップがそれぞれ〜905K回〜245 ms - 一緒に YugabyteDBの約70%は、ステートメントを実行しました。 マーケティングサイトはあ...

Kamo·4w ago
PerformanceEmailService

カレンダーのリマインダーは共有スケジューラスレッドを離れる

Spring のデフォルトシングルスケジューラスレッドは、このサービスのすべての @Scheduled メソッドによって共有されます — 1秒のキャンペーンパルス、ドリップエンジンのティック、およびReminderSchedulerService独自の60秒 周りの人々の間で広がります。 processReminder...

Kamo·4w ago
PerformanceDocsService

バイト重い画像パスをバウンドしてストリーム

/download は、ファイル全体を byte[] にロードしました。 /bulk-download は 1 バイトで ZIP (または PDF をマージ) 全体をビルドしました。 応答する前に DocumentPrepareService; このサービスの〜1.4 GB に対して最大 3 GB のアップロード ヒー...

Kamo·4w ago
PerformanceKBService

Content json をロードしてパブリックツリーのインデックスをビルドし、読み込みを2回停止しないでください

buildPublicTreeIndex は、小さな構造インデックス (parent/child, slug path, ancestors) をビルドします。 org 内のすべてのパブリック記事が、完全な KbArticle 行をロードしていた — content json 含む, 列の残りの部分のための数百バイトに...

Kamo·4w ago
PerformanceSecurityService

管理-クレジットとリード-Availableは、行ごとにカウントするのではなく、リードレジャーを一度読みます

/leads/credits (GET /api/security/credits/manage) は、割り当て行ごとにリードプールを数えました — ~8 s 1 つの org の 796k 鉛プールに対する apiece — よりグループ化された (~11 s) は、各行のクレジットをカウントしました バランスをとり...

Kamo·4w ago
Performancekamo-shared-library

利用可能なリードとクレジット残高は、行数ではなくレジャーを読みます

"Leads available" は、割り当てられたプールの上に COUNT(*) で、1 つの org のプールは ~796k のリードを保持しました。 ~7.8 s/(市場、製品) カウントおよびグループ化された 1 の ~11 s (測定 2026-09-17)。 管理クレジット 割り当て行ごとに単一のカウント...

Kamo·4w ago
September 17, 2026
Performancekamo-internal

ドックはコンポジタに移動し、その中のツールを再レンダリングしないウィンドウ

MOVESのポップアップツールウィンドウに関するすべて - 行を再梱包し、ストリップと取引場所 クリックして、背後にある行からステップアウトし、ドラッグ、縫い目を引く、最大化されたペインを服用して残します - レイアウトパスとフレームごとにすべてのオープンウィンドウのコンテンツの完全なReactリレンダーをコストダウン...

Kamo·1mo ago
September 16, 2026
Performancekamo-shared-library

プールの適格性を無秩序なサンプルと確認して下さい、フル・プールの並べ替え無し

hasEligibleAssignableLead はプールのリードが 1 つであるかどうかを知る必要があります メンバーは取るかもしれませんが、それはfindAssignablePoolのページを読みます, その ORDER BY reset date は、LIMIT の前にプール全体をインデックス化してソートしませ...

Kamo·1mo ago
PerformanceDaemonService

インテークのリードを同時作成し、より大きなバッチを主張

ジョブは500列のクレームから1つのリードを作成しました。~230リード/分 大量のベンダーリストをバックログの日に変換します。 今、主張 2000 1回の実行あたりのペイロードと4を同時に作成します。各リードは、それぞれ独自の 結果のトランザクションはすぐに持続し、実行はすべてのために待ちます @DisallowCo...

Kamo·1mo ago
September 9, 2026
Performancekamo-internal

時計はコンポジターに排水します。タイマーではなく

フェルトの時計は、200msセットインターバルをReactに書き込む。 サーバの期限を追跡しなければならないバーを構築するのは正直な方法です。 ほとんどの場所で間違っている:Chromeは隠しタブのタイマーをスロットルします 1分間目覚めるので、別のタブの背後にあるテーブル、または最小限のウィンドウで — 単に止まった...

Kamo·1mo ago
September 8, 2026
PerformanceMediaService

ウォレットを再構築し、すべてのチェックのゲストリストを停止する

`viewFor` は、受取人のチェダーの残高を受け取り、全体をqueried 組織の会員リスト — 公開されたすべてのフレームで、RECIPIENT が両方。 お問い合わせ eleven のクロスネームスペース ウォレットの呼び出しと eleven 全体オーガニ それぞれの折り目、チェック、呼び出しのためのクエリ:各...

Kamo·1mo ago
September 6, 2026
Performancekamo-marketing

すべてのシーンをリサイズでスプライトバンクを再燃させ続ける

すべての18シーンのオーディションは、それら12の同じ欠陥を発見し、それは タブを1分または2分に分解し、ゴミ箱に入れる形状 コレクション: `onResize` は、すべての呼び出しで全スプライトバンクを再構築しますが、 sprite は `size.dpr` のみに依存します。 キャンバス裏付け店はJSヒープの外に...

Kamo·1mo ago
September 5, 2026
PerformanceKlusterServices

ウィンドウを押下すると、DDL が後ろに立ち返ります

DDL を適用すると、カタログ版をバンプし、古いものを保持しているバックエンドはまだ 次のステートメントをSQLState 40001で無効化するまで失敗します。 最後まで 発生コスト 188 エラー 車両全体で 15 分以上、報告 単一のウィジェットが壊れています。 メニュー (から 3600) 物理的な長さをバイ...

Kamo·1mo ago
September 4, 2026
PerformanceDocsService

プロフィールのエンドポイントは、ボード全体をロード停止します

自分のコメントは、それが存在していたので、ページは、雇用主をペイントすることができます "なし すべての広告をそれで引き下げる、および呼ばれるそのコメントの下の行 board() — すべての投稿を読み込み、すべての投稿をマッピングし、実行 パーポスト申請者アカウントのクエリ、1つのプロファイルオブジェクトを返す。 ...

Kamo·1mo ago
September 3, 2026
Performancekamo-internal

すべてのスクロールフレームにインライン画像ツールバーを再レンダリングを停止する

check() は各スクロールで実行し、イベントのサイズを変更し、新しいステートオブジェクトをビルドします。 毎回、ツールバーがイメージについて何かしかないかどうかを再レンダリング 変更しました。 箱は既に平等ガードを持っていました; イメージの状態は今1つを持っています あまりにも、スクロールを単一のレンダーに保持す...

Kamo·1mo ago
September 2, 2026
PerformanceEmailService

Select-then-write ではなく 1 つのステートメントでメッセージをインデックス化

検索インデックスの行のキーは生成されるのではなく、割り当てられます。 save() のエンティティティティティはマージされました: Spring Data は、全行を出力しました — 本文 UPDATEの前に含まれています。 メッセージごとに1回実行される タッチをリストするフォルダなので、各インデックスメッセージは1...

Kamo·1mo ago
PerformanceKBService

ツリーのすべてのノードで ancestor チェーンを繰り返す

ツリー内のノードは、その位置がツリーです。 祖先チェーンをひとつひとつに送り出すことで、すべての記事が2つの祖先を運んだ 自分の抜粋と子供のカウントで refs: 同じ16カテゴリ 記述、リストする仕事の応答で三百回繰り返される タイトル ブレッドクラムは単粒子の懸念であり、それでもそれらを取得します。 ブレッドクラ...

Kamo·1mo ago
August 28, 2026
Performancekamo-internal

会話は、ウィンドウが表示されて表示する

チャットウィンドウを開くと、メッセージがレンダリングされる前に7つのリクエストが課金されます。歴史、 メンバー、レシート、マーク読み取り、未読のスナップショット、カウンターパートのアバター、 コンポーザーポリシー — メッセージごとにPOSTを1つまで翻訳し、 メッセージごとに書かれたPHI監査行を個別にサーバー化しま...

Kamo·1mo ago
PerformanceMediaService

再オープンしたウィンドウを見逃したものだけにし、ページを1つの書き込みで監査する

チャットウィンドウの開口部ごとに支払われる2つの費用。 ?since に GET /sessions/{guid}/messages. 再開いているウィンドウがほしい 既に保持しているメッセージの後、そう言う方法がなかった。 このエンドポイントの回答は「最新のページ」でした。 毎回時間が経ち、間違ったこと。 そのため...

Kamo·1mo ago
August 26, 2026
Performancekamo-internal

タブの1つのセッションスナップショット、ホックインスタンスの1つではなく

useUserInfo は 3 つの useState セルでセッションを開催しました。 187 のコールサイトとおよそ 27 の それらは全セッションのために取付けられます — nav、すべての貝の提供者、進水パッド。 ザ・オブ・ザ・ REQUEST は既に石炭処理済みだったので、 /api/user-info の呼...

kamo·2mo ago
Performancekamo-internal

WOFF2としての船芸士

両顔は全てのルートにプリロードされますので、その形式は初めての訪問時に支払われます。 WOFFの134,132 BはWOFF2の112,252 Bになりました - 21,880 B、16%カット。 つまり、WOFF2変換の~30%よりも小さく、その理由は 誰もこの期待を起こさないので、書き留める価値:30%の数字は反...

kamo·2mo ago
Performancekamo-internal

小売市場は、住宅ローンタブをダウンロードしないでください

市場設定ページは、静的にすべての24タブをインポートするので、すべての市場はすべての タブ — 小売市場は、7つの住宅タブ、4つの個人ローンタブ、 決して開くことができない5つのサブスクリプションタブ。 下のレンダーは、それぞれ1つずつゲートします market.commerceType; インポートのみ無視します。 ...

kamo·2mo ago
Performancekamo-internal

最遅く待たずに最初の壁紙を表示

スライドショーは、単一の約束の背後にあるすべての壁紙をプリロードしました。 何も塗装されていない セット中のLASTイメージが落ちるまで。 数十人のバックグラウンドを持つテナントで twelfthが到着するまでの背景を裸足にすることを意味する - スライドショーの写真は、 8x(N-1)秒後まで必要です。 毎回はまだ...

kamo·2mo ago
Performancekamo-internal

あらゆるコンテキストとホックは、カルチェッサーを通してユーザー情報を読み込むようになりました

7つの独立した/api/user-infoは、冷た認証された負荷で発射され、各1 会員 ID を申し込むと、既に同時期に申し立てられました。 ひとつひとつひとつひとつ それらは、Redis EXISTSとSETEX、RecomputesにPOSTです。 データベースに対する全権利の滝、およびRedisのマスターは読む。...

kamo·2mo ago
Performancekamo-internal

One refresh timer for the whole app, not one per useUserInfo()

useUserInfo has 194 call sites, roughly a dozen of them mounted for the entire session — the nav, the shell providers, the launchpad. Each instance armed its ow...

kamo·2mo ago
Performancekamo-internal

Server-render は認証済みアプリで、500 のフォールバックオーグを修正しました

MemberListProviderはマウント効果が実行されるまでnullを返し、NavTopの上に置く そして {children} — 1 行が ENTIRE 認証済みアプリケーションを 1 行から保持するように サーバレンダリングされたHTML。 ドキュメントは、ほぼマークアップを運ぶ ~1.23 MB だった:...

kamo·2mo ago
Performancekamo-internal

チェックボックスのクリックは、フォルダのサイドバーを再レンダリングしないでください

6つのコールサイトは、バールの`useEmailStore()`でメールストアを読み込みます。 ズスタンドでは WHOLEストアを購読するので、コンポーネントを再レンダーするどこにでも変更できます。 ラベル、ルール、スマートフォルダと同じストアに、選択状態が住んでいます。 ログイン メッセージリストに 1 つのチェック...

kamo·2mo ago
Performancekamo-internal

アプリ全体の未読値を記憶し、自己抑制効果を固定

UnreadContext はコンテクスト値として 14 人のオブジェクト literal を公開したので、React プロバイダーのすべてのレンダレンダ上のコンテクストの変更を見たり、すべてのコンシューマーを手元に書き込む 同じカウント。 AuthedChrome 内でアプリ全体にマウントされ、 nav で読み込みま...

kamo·2mo ago
Performancekamo-internal

誰も見ていないバッジのポーリングを停止し、すべての消費者を無駄にする停止

2つの常時取付けられた提供者は可視ゲート無しの1分の気孔を動かしました。 LegalPackageCount はどれも全く持っていませんでした。 TrainingPendingCount は可視性のchange を再読しました しかし、その間隔は無関係に刻まれています。 背景のあるタブでは、毎分1回目覚めた 誰も見られ...

kamo·2mo ago

配送を見るのが好きですか?

自分のワークスペースに到着します。 無料プランをスタートし、月に再度このページをお読みください.

永遠に無料で始める料金を見る