タグ

ブックマーク / www.infoq.com (33)

  • UberのCacheFront:レイテンシーを大幅に削減し、毎秒4000万件の読み取りを可能に

    垂直スケーラビリティと効果的なテストによる金融取引システムのパフォーマンスと効率の最大化 Peter Lawrey氏はJavaチャンピオンであり、Chronicle SoftwareのCEOとして、開発者を鼓舞してソリューションのクラフトマンシップを高めることに情熱を注いでいる。経験豊富なソフトウェアエンジニアとして、Lawrey氏はソフトウェア開発プロセスにおけるシンプルさ、パフォーマンス、創造性、革新性を奨励することに努めている。

    UberのCacheFront:レイテンシーを大幅に削減し、毎秒4000万件の読み取りを可能に
    bopperjp
    bopperjp 2024/03/13
  • 大手ハイテク企業のエンジニアリング生産性指標に学ぶ

    The Pragmatic Engineer Newsletterの著者であるGergely Orosz氏は最近、Measuring Developer Productivityという記事を発表した。DXCEOであり、DevExフレームワークの共同開発者であるAbi Noda氏との共著である。この記事では、Noda氏が有名ハイテク企業の幅広い分野で使用されているエンジニアリング・メトリクスを調査した結果を分析している。Noda氏は、DORA やSPACEメトリクスを全面的に採用するのではなく、使用されている指標には多くのコンテキスト固有の定性的・定量的メトリクスが含まれていることを発見した。Noda氏とOrosz氏は、イネーブルメントチームが求める成果から逆算して、そのようなメトリクスを定義するためのガイダンスを提供した。 Noda氏は、「17の有名ハイテク企業で開発者の生産性測定を担当

    大手ハイテク企業のエンジニアリング生産性指標に学ぶ
    bopperjp
    bopperjp 2024/02/03
  • パフォーマンスの高いソフトウェア・チームになるには

    垂直スケーラビリティと効果的なテストによる金融取引システムのパフォーマンスと効率の最大化 Peter Lawrey氏はJavaチャンピオンであり、Chronicle SoftwareのCEOとして、開発者を鼓舞してソリューションのクラフトマンシップを高めることに情熱を注いでいる。経験豊富なソフトウェアエンジニアとして、Lawrey氏はソフトウェア開発プロセスにおけるシンプルさ、パフォーマンス、創造性、革新性を奨励することに努めている。

    パフォーマンスの高いソフトウェア・チームになるには
  • DevOpsの負の側面について

    トランスクリプト Protsenko氏:私の名前はMykytaです。Netflixで働いています。私の仕事は基的に、他の開発者が遅くまで職場に残らなくてもいいようにすることです。彼らが午後5時に退社しても生産的であることが私の実現したいことです。私はプラットフォーム組織、つまり生産性エンジニアリング部門で働いており、他のエンジニアのために労力を抽象化しようとしているのです。エンジニアが同じ退屈な技術的問題に何度も対処するのではなく、ビジネス上の問題の解決に集中できるようにします。 いくつか質問させてください。あなたたちのうち何人が、自分で作って自分で動かすという哲学を実践している会社で働いてますか?生産現場との間にゲートキーパーがいないこと、機能や修正をより早く提供できることに満足している人はどれくらいいますか?番環境で発生したインシデントに対処しているときに、どうすればいいのか分から

    DevOpsの負の側面について
  • テスト駆動開発:実はそれは設計技術です

    テスト駆動開発(TDD)は、より優れたソフトウェアを持続的に早く提供するための確立された手法です。TDDは単純な考えに基づいている。製品コードを書く前に失敗するテストを書くことです。新しい行動が必要ですか?失敗するテストを書いてください。しかし、この一見単純な考えをうまく実行するには、スキルと判断が必要です。 TDDは当に設計のためのテクニックです。TDDの基礎は、小規模なテストを使用してボトムアップを早急に設計することであり、システムへの信頼を構築しながら迅速に何らかの価値を得ることです。よりよい名前はテスト駆動設計かもしれません。 設計方法としては、集中と単純さです。目標は、開発者が価値を提供する上で不要な余分なコードを書くことを防ぐことです。問題を解決するのに必要最小限のコードを書くことです。 多くの記事がTDDを行うことのすべての利点を誇りにしています。そして多くの技術会議の講演

    テスト駆動開発:実はそれは設計技術です
  • なぜSegmentはマイクロサービスからモノリスに回帰したのか

    Spring BootによるAPIバックエンド構築実践ガイド 第2版 何千人もの開発者が、InfoQのミニブック「Practical Guide to Building an API Back End with Spring Boot」から、Spring Bootを使ったREST API構築の基礎を学んだ。このでは、出版時に新しくリリースされたバージョンである Spring Boot 2 を使用している。しかし、Spring Boot3が最近リリースされ、重要な変...

    なぜSegmentはマイクロサービスからモノリスに回帰したのか
    bopperjp
    bopperjp 2018/08/17
  • 私がMVCフレームワークをもはや使わない理由

    数ヶ月前、私はなぜここにたどり着き、何が可能かを理解する旅に出ました。この旅は、私にアプリケーションアーキテクチャ、MVCという強烈な宗教に対する疑いをもたらしました。そして、リアクティブ、関数型プログラミングの真の実力に触れたのです。また、シンプルさに集中する旅でもあり、私たちの産業はうまくやっているという考えを捨てる旅でもありました。どんなことを見つけたか興味がある方もいるでしょう。 私たちの見ている画面の背後にあるパターンはMVC –Model-View-Controllerです。まだウェブがなくソフトウエアアーキテクチャも分厚いクライアントが単一のデータベースに原始的なネットワークでアクセスするのがせいぜい、という時代にMVCは生まれました。そして数十年後、MVCはまだ現役であり、衰え知らずでオムニチャネルアプリケーションの開発に使われています。 Angular2のリリースの前にM

    私がMVCフレームワークをもはや使わない理由
  • GitHubがDGitによって信頼性,可用性,性能を向上

    Spring BootによるAPIバックエンド構築実践ガイド 第2版 何千人もの開発者が、InfoQのミニブック「Practical Guide to Building an API Back End with Spring Boot」から、Spring Bootを使ったREST API構築の基礎を学んだ。このでは、出版時に新しくリリースされたバージョンである Spring Boot 2 を使用している。しかし、Spring Boot3が最近リリースされ、重要な変...

    GitHubがDGitによって信頼性,可用性,性能を向上
  • マルチコア危機:ScalaとErlangの対立

    ブロゴスフィアでは最近Scala対Erlangの議論がややヒートし続けている。マルチコアの世界(参考記事)が訪れようとしている今、いかにマルチコア危機を解決するかが問題になっている。ScalaとErlangはその解決法たらんとしている言語だが、少し違いがある。それぞれのアプローチの長所短所はなんだろうか? 問題 ムーアの法則はもう通用しない。かつてのようなクロック周波数の向上(リンク)は見込めず、かわりにコアの数を増やそうとしている。今の時代、あなたのノートPCでさえも2つコアを搭載していることだろう。 2つ以上のコアを有効に使うには、アプリケーションが並列処理を意識してないといけない。もしあなたの顧客が8コアのマシンを買ったとしたら、たとえそれをあるアプリケーションの専用マシンにしたとしても、そのアプリケーションがCPU性能の12%しか使えなくてもおかしくない、とあなたは顧客にどうにかし

    マルチコア危機:ScalaとErlangの対立
    bopperjp
    bopperjp 2016/02/18
  • AmazonがAWS Well-Architected Frameworkを公開

    Spring BootによるAPIバックエンド構築実践ガイド 第2版 何千人もの開発者が、InfoQのミニブック「Practical Guide to Building an API Back End with Spring Boot」から、Spring Bootを使ったREST API構築の基礎を学んだ。このでは、出版時に新しくリリースされたバージョンである Spring Boot 2 を使用している。しかし、Spring Boot3が最近リリースされ、重要な変...

    AmazonがAWS Well-Architected Frameworkを公開
  • JerryScriptとIoT.js: SamsungによるIoT向けJavaScript

    Spring BootによるAPIバックエンド構築実践ガイド 第2版 何千人もの開発者が、InfoQのミニブック「Practical Guide to Building an API Back End with Spring Boot」から、Spring Bootを使ったREST API構築の基礎を学んだ。このでは、出版時に新しくリリースされたバージョンである Spring Boot 2 を使用している。しかし、Spring Boot3が最近リリースされ、重要な変...

    JerryScriptとIoT.js: SamsungによるIoT向けJavaScript
    bopperjp
    bopperjp 2015/08/25
    省メモリJSランタイム(JerryScript)と、node.js 互換ライブラリ(IoT.js) をサムスンが開発
  • GiltでのScala,Docker,AWSを使ったマイクロサービスのスケールアップ

    Spring BootによるAPIバックエンド構築実践ガイド 第2版 何千人もの開発者が、InfoQのミニブック「Practical Guide to Building an API Back End with Spring Boot」から、Spring Bootを使ったREST API構築の基礎を学んだ。このでは、出版時に新しくリリースされたバージョンである Spring Boot 2 を使用している。しかし、Spring Boot3が最近リリースされ、重要な変...

    GiltでのScala,Docker,AWSを使ったマイクロサービスのスケールアップ
  • 現実世界におけるルールエンジン

    これらのビジネスルールは新しいものではありません。多くのビジネスソフトアプリケーションの中核となるビジネスロジックです。もしあなたが開発者なら、こうしたルールは要件のサブセットとして表現されているのを何度となく見たことでしょう。これらは、"月曜日は、3つ以上のご注文で20%のディスカウント"や"スーパースポーツ・バイクでは、16才の男性に保険を掛けることはできません"といった文章に似ています。 ルールエンジン間の主な違いは、こうしたルールがどう表現されるか、です。プログラムの中に埋め込まれる代わりに、これらはビジネスルールの書式に符号化されます。この書式はルールエンジンごとに違っています。 ルールエンジンは、何の制限も受けていません。ルールを管理するための、他のツールと一緒にリリースされることがよくあります。一般的なオプションとしては、生成、デプロイ、保存、バージョニング、そして個別もしく

    現実世界におけるルールエンジン
  • Aerospike, Cassandra, Couchbase、MongoDBを比較したNoSQLベンチマーク

    Spring BootによるAPIバックエンド構築実践ガイド 第2版 何千人もの開発者が、InfoQのミニブック「Practical Guide to Building an API Back End with Spring Boot」から、Spring Bootを使ったREST API構築の基礎を学んだ。このでは、出版時に新しくリリースされたバージョンである Spring Boot 2 を使用している。しかし、Spring Boot3が最近リリースされ、重要な変...

    Aerospike, Cassandra, Couchbase、MongoDBを比較したNoSQLベンチマーク
    bopperjp
    bopperjp 2014/10/03
    ベンチマーク
  • C3.jsが実現する,学習不要のグラフ機能

    Spring BootによるAPIバックエンド構築実践ガイド 第2版 何千人もの開発者が、InfoQのミニブック「Practical Guide to Building an API Back End with Spring Boot」から、Spring Bootを使ったREST API構築の基礎を学んだ。このでは、出版時に新しくリリースされたバージョンである Spring Boot 2 を使用している。しかし、Spring Boot3が最近リリースされ、重要な変...

    C3.jsが実現する,学習不要のグラフ機能
    bopperjp
    bopperjp 2014/09/25
  • Apache Isis: ドメイン駆動設計のためのJavaフレームワーク

    Rustが再評価される:エコシステムの現状と落とし穴 In this article, we share findings and insights about the Rust community and ecosystem and elaborate on the peculiarities and pitfalls of starting new projects with Rust or migrating to Rust from othe...

    Apache Isis: ドメイン駆動設計のためのJavaフレームワーク
  • Facebook の決断:MVCはスケールしない。ならば Flux だ。

    Spring BootによるAPIバックエンド構築実践ガイド 第2版 何千人もの開発者が、InfoQのミニブック「Practical Guide to Building an API Back End with Spring Boot」から、Spring Bootを使ったREST API構築の基礎を学んだ。このでは、出版時に新しくリリースされたバージョンである Spring Boot 2 を使用している。しかし、Spring Boot3が最近リリースされ、重要な変...

    Facebook の決断:MVCはスケールしない。ならば Flux だ。
    bopperjp
    bopperjp 2014/05/30
  • Anypoint for APIs:Uri Saridへのインタビュー

    Spring BootによるAPIバックエンド構築実践ガイド 第2版 何千人もの開発者が、InfoQのミニブック「Practical Guide to Building an API Back End with Spring Boot」から、Spring Bootを使ったREST API構築の基礎を学んだ。このでは、出版時に新しくリリースされたバージョンである Spring Boot 2 を使用している。しかし、Spring Boot3が最近リリースされ、重要な変...

    Anypoint for APIs:Uri Saridへのインタビュー
    bopperjp
    bopperjp 2014/03/28
  • Docker: Linuxコンテナを使ってアプリケーションの配置を支援する

    サーバアプリケーションの配置はますます複雑になっています。いくつかのPerlスクリプトをコピーするだけでインストールが完了する時代は終わりました。今日、ソフトウエアは多くの種類の要求を抱えています。 インストールするソフトウエアやライブラリの依存物("Python >= 2.6.3とDjango 1.2に依存する") 実行するサービスへの依存("MySQL 5.5とRabbitMQのキュー"が必要) 特定のOSに対する依存("64-bit Ubuntu Linux 12.04でビルドとテストをした") リソースの要件: 利用可能なメモリの最少量("1GBのメモリが必要") 特定のポートへのバインド("80と443を使う") 例えば、比較的シンプルなアプリケーションの配置を考えてみましょう。Wordpressです。典型的なWordpressのインストールでは、 Apache 2 PHP 5

    Docker: Linuxコンテナを使ってアプリケーションの配置を支援する
  • State of the M2M projects at Eclipse

    bopperjp
    bopperjp 2013/11/02