InfoQ Software Architects' Newsletter A monthly overview of things you need to know as an architect or aspiring architect. View an example
設計者は分割が発生したとき一貫性と可用性のどちらかを選ぶ必要がありますが、分割の扱い方と分割の復旧には柔軟な対処方法があります。現在のCAPの目的は特定のアプリケーションが必要とする一貫性と可用性を最適化することでしょう。このような方法には分割発生中の計画や分割の復旧計画が組み込まれています。したがって、設計者はこのような方法を採用することで、従来受け取られてきたCAPの限界を超えてCAPについて考えることができます。 なぜ"3つのうち2つ"がミスリーディングなのか CAPを理解する最も簡単な方法は分割の両側にひとつずつノードがある場合を考えることです。片方のノードだけ状態を更新できるようにすると、2つのノードに一貫性がなくなります。つまり、Cが失われます。一貫性を維持しようとすれば、一方のノードは利用できない状態であるかのように動作しなければなりません。この場合、Aが失われます。一貫性と
Datomicは、情報システムであるデータベースと考えられています。情報は事実の集合であり、事実は起きたことです。人は過去を変えられません。つまり、データベースはその部分を更新するのではなく、事実を蓄積するものなのです。過去は忘れられる一方で、変えることはできません。そのため、誰かが住所を「変更」したら、Datomicは過去の事実を置き換えるのではなく、新しい住所を持つという事実を記憶します。(現時点のことが単に格納されています。) この不変性により、数多くの重要なアーキテクチャに関する利点と機会が生まれます。前回の記事では、Datomicアーキテクチャのことを書きました。この記事では、情報モデルとプログラミングの経験に注目します。 従来のデータベース(と数多くの新しいデータベース!)は、「今」、目の前にある事実、に注目しますが、そうすることで情報を失っています。ビジネスは歴史的情報の中に
Scaling Challenges: Productivity, Cost Efficiency, and Microservice Management The main objective of this article is to delve into the technical complexities and strategic adjustments undertaken by Trainline. By examining challenges such as managing peak transaction volumes and orchestrating microservice architectures, we aim to uncover the valuable lessons learned and insights gained from Trainli
NoSQLは、たった4、5年で50から150の新しいデータベースを増やしました。nosql-database.orgは、そのようなデータベースを150程紹介しています。その中には、Object Databaseのように、非常に古いけれども、まだ強力な時代遅れのものも含まれていました。そして、もちろん、いくつかの興味深い合併があり、CouchDBとMembaseはCouchBaseになりました。この記事では、主要なシステムについて後ほど触れたいと思います。 多くの人々は、NoSQLの世界では大きな合併が起きていると考えてきました。ところが、本当はそうではありません。NoSQLは、ただ急激に増えただけであり、まだ増え続けています。プログラミング言語のようなコンピュータサイエンスのすべての分野と同様に、非常に多くのデータベースのギャップはますます広がっています。これはインターネット、ビッグデータ
JVMはプロファイリングを利用してコードの最適化を行います。対象は頻繁に利用されるコードパスのみですが,徹底的に行うことで大きな効果を上げています。JITコンパイルされたコードに関しては,現在では多くの場面において (その割合も増えつつあります) C++の実行速度を凌駕しています。 このような事実にも関わらずJavaが今でも低速なプラットフォームとして認識されているのは,おそらくは初期バージョンのJavaプラットフォームでの経験が,歴史的な負のバイアスとして働いているためでしょう。 早まった結論を出す前に,客観的な見地に立って,最新のパフォーマンス結果を評価するようにお勧めします。 2. Java コードの1行にはそれ自体で意味がある 次の短いコード行を考えてみてください: MyObject obj = new MyObject(); Java開発者ならば誰でも分かるように,このコードはオ
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く