問題タブ [scaling]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
hardware - ウェブサイトのハードウェア スケーリング
それで、私は最新の Stackoverflow ポッドキャスト (エピソード 19 ) を聞いていました。Jeff と Joel は、Web サイトの成長に合わせてサーバー ハードウェアをスケーリングすることについて少し話しました。Joel が言ったことから、最初のいくつかのステップは非常に標準的です。
- Web サーバーとデータベースの両方を実行する 1 つのサーバー (現在の Stackoverflow セットアップ)
- 1 つの Web サーバーと 1 つのデータベース サーバー
- 負荷分散された 2 つの Web サーバーと 1 つのデータベース サーバー
しかし、彼らは次に来るものについてはあまり話しませんでした. ウェブサーバーを追加しますか? 別のデータベース サーバーですか? 冗長性のために、この 3 台のマシンのクラスターを別のデータセンターに複製しますか? ハードウェア部門のここから Web スタートアップはどこへ行くのでしょうか?
sql - 安価なスケーリング: MySQL と MS SQL
大量のデータ (および結合/検索) がある場合、MySQL は MS SQL と比較してどれくらい安くなりますか? すでに掘り下げられた後の Q&A でいっぱいの stackoverflow のようなサイトを考えてみましょう。
私の ASP.NET サイトは現在 SQL Server Express 上にあるため、長期的にコストを比較する方法がわかりません。とはいえ、簡単な調査の結果、MySQL のユーザーが得られる節約をうらやましく思い始めました。
java - 分散同時実行制御
私はこれに数日間取り組んできましたが、いくつかの解決策を見つけましたが、どれも信じられないほど単純でも軽量でもありませんでした。問題は基本的に次のとおりです。10 台のマシンのクラスターがあり、それぞれがマルチスレッド ESB プラットフォームで同じソフトウェアを実行しています。同じマシン上のスレッド間の同時実行の問題はかなり簡単に処理できますが、異なるマシン上の同じデータに対する同時実行の問題はどうでしょうか?
基本的に、ソフトウェアは Web サービスを介して顧客のデータをある企業から別の企業にフィードする要求を受け取ります。ただし、顧客が他のシステムに存在する場合もあれば、存在しない場合もあります。そうでない場合は、Web サービス メソッドを介して作成します。したがって、ある種のテスト アンド セットが必要ですが、他のマシンが競合状態を引き起こさないようにロックアウトするための何らかのセマフォが必要です。以前、1 人のローカル カスタマーに対してリモート カスタマーが 2 回作成されたという状況がありましたが、これはあまり望ましくありません。
私が概念的にいじった解決策は次のとおりです。
フォールト トレラントな共有ファイル システムを使用して、お客様に応じて各マシンでチェックされる「ロック」ファイルを作成します。
データベースで特別なテーブルを使用し、ロック レコードの「テストと設定」を行うためにテーブル全体をロックします。
スケーリングを支援するオープン ソース サーバー ソフトウェアである Terracotta を使用しますが、ハブ アンド スポーク モデルを使用します。
メモリ内の「ロック」の同期レプリケーションに EHCache を使用します。
この種の問題を経験したことがあるのが私だけだとは想像できません。どのように解決しましたか?社内で何か調理しましたか、それともお気に入りのサードパーティ製品はありますか?
flash - FLVPlayback と flash 9.0.115+ で古い全画面スケーリングを取得できますか?
以前のバージョンの Flash では、全画面表示モードに入ると、ステージの高さと幅が画面の寸法まで拡大されました。ハードウェア スケーリングが実現したので、高さと幅はビデオの寸法に設定されます (アスペクト比が異なる場合は境界線も追加されます)。
ビデオの上にコントロールを配置していない限り、それで問題ありません。以前は、サイズを制御できました。しかし今では、ビデオと同じスケールで拡大され、恐ろしくピクセル化されています。コントロールは醜く、字幕は読めません。
ユーザーがハードウェア スケーリングをオフにすることは可能ですが、実現できるのはアンチエイリアシングをオフにすることだけです。コントロールはまだ醜いほど爆破されています。
古いスケーリング動作を取り戻す方法はありますか?
asp.net - ASP.NET を実行している Web ファームの分散キャッシュに何を使用していますか?
この状況で他の人が何を使用しているのか、私は興味があります。memcached ポートや ScaleOutSoftware など、いくつかの選択肢があることを知っています。memcached ポートは積極的に取り組んでいないようです (間違っていたら訂正してください)。ScaleOutSoftware は私には高すぎます (それだけの価値があることは間違いありません)。これは、memcached や ScaleOutSoftware を使用している人々について聞きたくないということではありません。この時点で私が「知っている」ことを述べているだけです。
私の質問は基本的にこれです:分散キャッシュを積極的に使用している方は、何を使用していますか?
私はすぐに 2 つのサーバーに移動します...どちらも同じ場所に配置されます。データベース サーバーの負荷を軽減するために、かなり頻繁に (ただし慎重に) キャッシュを使用しています。
編集: Scaleout Software のソリューションをダウンロードしました。私はそれをコーディングしましたが、本当にうまくいくようです。私の財布がそのために現金を手放すかどうかを決めなければなりません。:) ScaleoutSoftware で良い経験も悪い経験もした人はいますか?
もう一度編集:これを尋ねてから少し時間が経ちましたか?それ以上の考えはありますか?最終的に ScaleOutSoftware からソリューションを購入して満足していますが、他の人が何をしているのか気になります。
database - CouchDB でインデックスの更新をスケジュールする方法
私が理解している限り、CouchDB インデックスは、ビューがクエリされると更新されます。書き込みよりも読み取りの方が多いと仮定すると、これはスケーリングにとって悪いことではありませんか? 書き込み時にインデックスを更新するように CouchDB を構成するにはどうすればよいでしょうか。
java - Java GUI の解像度に依存しないスケーリング
私は、重要な機能がモニター解像度に基づく GUI コンポーネントの自動スケーリングである大規模なレガシー Java アプリケーションに取り組んでいます。JVM を実行する JVM を 1.4.2 から 1.6 にアップグレードしていますが、java.awt.Container.getPreferredSize() の実装が変更されたため、スケーリングが機能しなくなりました。
getPreferredSize は、setPreferredSize() で指定したものと同じオブジェクトを返すために使用されていました (すべて最小/最大サイズにも適用されます)。そのため、java.awt.Dimension の特定のサブクラスを持つすべてのスケーリング コンポーネントで setPRefferedSize を呼び出します。コンポーネント階層をたどり、解像度が変更されるたびに各スケーリング コンポーネントを更新します。
ただし、Java 1.6 では、getPreferredSize は渡した Dimension オブジェクトのコピーを返すため、正しい型ではなくなり、何もスケーリングされません。
Component クラスをクラスパスの JRE の前に配置することで独自の実装 (オープンソース JRE に感謝) でオーバーライドすることで、非常に迅速にソリューションをハックしました。ただし、このソリューションは明らかに維持できません。
Java 1.5/1.6 で GUI スケーリングをどのように実装しますか?
mysql - MySQL のスケーリング ソリューション (レプリケーション、クラスタリング)
私が働いているスタートアップでは、現在、データベースのスケーリング ソリューションを検討しています。MySQLクラスター、レプリケーション、およびMySQLクラスターの非同期バージョンであるMySQLクラスターレプリケーション(バージョン5.1.6以降)を備えたMySQLでは、(少なくとも私にとっては)やや混乱します。MySQL のマニュアルでは、クラスターの FAQでいくつかの違いについて説明していますが、どちらをいつ使用するかを確認するのは困難です。
これらのソリューションの違い、長所と短所、それぞれをいつ使用することをお勧めするかについて詳しい方からのアドバイスをいただければ幸いです。
wpf - XAML プロパティのサイズ変更
XAML プロパティを、それらが属する uielements のサイズに合わせてスケーリングする方法はありますか?
本質的に、作成したコントロール テンプレートが大きすぎて使用できません。主な理由は、同じコントロールを異なるサイズで使用したいからです。問題は、(ControlTemplate で) コントロール サイズを Auto に設定できることですが、組み込みテンプレート要素のプロパティのサイズが変更されません。たとえば、StrokeThickness は 10 のままで、1 になるはずです。
テンプレートに ScaleTransform を適用すると問題なく動作しますが、実際に使用するとコントロールが小さすぎます: width/height=Auto はコントロールを適切なサイズにサイズ変更し、 scaletransform が適用されます。だから私は一種の非スケーラブルなコントロールを持っています。
私はWPFに少し慣れていないので、これを行う簡単な方法があるかもしれません...
php - 大規模なカスタム調査/レポートアプリケーション-ベストプラクティス
状況
あなたが社会科学を研究するとき、あなたはしばしばオンライン調査(オンラインでの科学的データ収集)の必要性に直面します。それが、私が最初にPHPを始めた主な理由の1つです。
最近、これらの調査アプリケーションは成長し、成長しています。レポート(フラッシュチャート、PDF生成)、データ集計、さまざまなレベルの集計(会社単位など)、関係する会社のアンケートモジュールの選択など、多くの複雑さが追加されました。
今、私は、遅くなり、保守が困難になっている複雑なデータ収集およびレポートアプリケーションに直面していることに気づきました。
私のプラットフォームの1つには、1日あたり最大100人の新規ユーザーがいて、数千人のユーザーのデータに 数 百のデータ項目を掛け、 数 十の階層レベルを掛けて集計/レポートします。
私の質問
- PHP / mysqlはまだ道のりですか?
- codeIgnitorのようなフレームワークをそのようなアプリケーションの基盤にすることができますか、それともすべてを最初から開発する必要がありますか?
- 私が基礎として使用できる調査固有のフレームワークの種類を知っていますか?