タグ

Architectureに関するyasuharu519のブックマーク (14)

  • system-design-primer#system-design-interview-questions-with-solutions

    You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

    system-design-primer#system-design-interview-questions-with-solutions
  • ドメイン駆動設計で保守性をあげたリニューアル事例 〜 ショッピングクーポンの設計紹介

    ヤフー株式会社は、2023年10月1日にLINEヤフー株式会社になりました。LINEヤフー株式会社の新しいブログはこちらです。LINEヤフー Tech Blog こんにちは! Yahoo!ショッピングクーポンチームの小倉です。 前回のフロントエンド技術刷新の話とは打って変わり、今回は2019年に行ったバックエンド技術刷新の話です。 刷新前のシステムはノンフレームワークPHPのモノリスでしたが、現在は主にJava/Spring Bootでマイクロサービス化しています。今回は、その中でもっとも仕様が複雑だったマイクロサービスにおいて、ドメイン駆動設計(Domain Driven Design:DDD)を実践した話をご紹介します。 ショッピングクーポンの自由度を知る みなさんは、ショッピングの商品が割引になるクーポンをご存じでしょうか? 実は、クーポンには、ヤフーが予算をだして発行する「モールク

    ドメイン駆動設計で保守性をあげたリニューアル事例 〜 ショッピングクーポンの設計紹介
  • 新卒にも伝わるドメイン駆動設計のアーキテクチャ説明[DDD] - little hands' lab

    ドメイン駆動設計で実装を始めるのに一番とっつきやすいアーキテクチャは何か ドメイン駆動 + オニオンアーキテクチャ概略 以前こちらの記事でアプリケーションアーキテクチャについて書きました。 こちらの記事では比較的ネタ元に忠実な解説をしたのですが、実際これに基づいて人にレイヤの説明をした際、依存性の逆転部分や円形で表現する部分がなかなか伝わりにくいことがありました。 そんな中で、所属プロダクトで新卒含めて大規模なリニューアル案件でDDDを採用することになり、新卒にも伝わるように説明をする必要性が生じました。 結果、新卒にも伝わり、運用が割と回る説明が見つかったのでご紹介したいと思います。 アプリケーションアーキテクチャ全体図 とにかく、何か説明する際はこの図を常に傍に置き、一方通行の依存性を徹底したい、という話をしています。 何かについて議論をする際は、 「それはどの層の責務なの?」 という

    新卒にも伝わるドメイン駆動設計のアーキテクチャ説明[DDD] - little hands' lab
  • Exploring Notion's Data Model: A Block-Based Architecture | Notion

    A generation of pioneers (Doug Engelbart, Ted Nelson, Alan Kay, and many more) saw the computer as tool to augment human problem-solving by giving people power over information. Today, that information mostly remains siloed across tools. Take cloud-based document editors, where pages are their smallest atomic unit. Information is locked inside of pages and files and folders — that’s reminiscent of

    Exploring Notion's Data Model: A Block-Based Architecture | Notion
    yasuharu519
    yasuharu519 2024/07/14
    Notion のデータアーキテクチャについて
  • [GDC 2016]110万人が同時接続する「World of Tanks」のバトルを支えるサーバーアーキテクチャとは

    [GDC 2016]110万人が同時接続する「World of Tanks」のバトルを支えるサーバーアーキテクチャとは ライター:米田 聡 Wargaming.netの「World of Tanks」(PC / PlayStation 4 / Xbox One)は,同時接続者数のギネス記録を持つオンライン戦車アクションゲームだ。多数のプレイヤーが接続してリアルタイムバトルを繰り広げる裏には,それを支える高度なサーバー技術があるわけだが,いったいどんなものなのだろうか。 GDC 2016の最終日(北米時間の2016年3月18日),「Engineering Decisions Behind World of Tanks Server」と題するセッションで,ピーク時には110万人が接続するというWorld of Tanksのサーバー概要が語られた。 「World of Tanks」公式サイト マ

    [GDC 2016]110万人が同時接続する「World of Tanks」のバトルを支えるサーバーアーキテクチャとは
  • MVVMのModelにまつわる誤解 - the sea of fertility

    こちらに移転してきて初めての記事です。 最近たまに話題になるので書いておきます。MVVMのModelについて誤解されやすい部分のお話です。最近よく議論してるasync/awaitの話とは関係がありません。なおこの話は以下のスライドを理解している事が前提となります。 共有したい理解(ゴール) ViewModelはModelの影 ModelについてViewModelが行うことは、イベントに対する反応と戻り値のないメソッドの呼び出ししかない事 これについての理解を共有できるよう説明していきます。 VIewModelはModelの影 スライドにもしつこく書きましたが、MV○(MVVMやMVC/MVP)のModelは大変分厚くなるし、アプリケーション間で使いまわすことなんてできません。ModelはUIを意識しない??いや、何度も言っていますが、意識はする必要があるんです。ただUI実装の知識が必要ない

    MVVMのModelにまつわる誤解 - the sea of fertility
    yasuharu519
    yasuharu519 2015/11/10
    viewmodelはmodelの影
  • エディタの実装をcycle.jsでMVIベースにしてみた話 - ✘╹◡╹✘

    最近Electronでエディタをつくっており、最初はReact.jsを使いながらゆるいFlux風の設計でつくっていたのを、cycle.jsを使いながら一部をMVI風の設計に置き換えてみた。400行程度の一画面のコードだったので3時間ぐらいで置き換えられて、前よりも責務が適切に分割されるようになったので、体部分も次の機能追加時に置き換えようと思っている。 とりあえずプレビュー画面だけ置き換えた 置き換えたのは、編集中のファイルを別画面でプレビューとして表示する画面で、ただプレビューするだけの機能のほかに連続したスライドとして表示するプレゼンテーション機能もある。1つ前のブログ記事を見てもらうとわかりやすいと思うけれど、次の画像のようなやつ。ボタンをクリックしてモードを切り替えたりキーボードを使って移動したり、またエディタ側でファイルの内容が書き換わったりと、それっぽく言えば幾らか動きのある

    エディタの実装をcycle.jsでMVIベースにしてみた話 - ✘╹◡╹✘
  • iOS/Androidアプリエンジニアが理解すべき「Model」の振る舞い

    iOS/Androidアプリを作る際に理解しておいて欲しい「Model」という役割について説明します。わりと意識していないケースがあるので、チェックしてみてください。Read less

    iOS/Androidアプリエンジニアが理解すべき「Model」の振る舞い
    yasuharu519
    yasuharu519 2015/10/07
    Model定義について。わかりやすい
  • 新規SaaS事業における最大の課題 | POSTD

    新規SaaS事業における一番の課題はその成長です。お金を生み出す将来有望な仕組みを構築するというのは、それ自体、心を奪われる作業とも言えますが、その歩みは決して速いものではありません。何かしらの製品を立ち上げた人の誰しもが、 「他のサクセスストーリーと違うじゃないか」 というような、やり場のない気分になるのではないかと思います。 Nusii は成長しています。ただ、私の思いに反して、そのペースは遅々としたものです。では、これに対して何かできることはあるのでしょうか。 コンバージョンは良好 Michaelと私は定期的に数字を確認しますが、大体において、その結果にとても気分をよくしています。トライアルへのサインアップをする訪問者の割合は2.4%と、なかなかのものですし、トライアルから有料版に切り替える顧客は実に45%です。もちろん、私たちはSaaS分野では新参者なので、このデータはある程度範囲

    新規SaaS事業における最大の課題 | POSTD
  • マイクロサービス移行の代償

    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が最近リリースされ、重要な変...

    マイクロサービス移行の代償
  • 技術選択とアーキテクトの役割

    1. Copyright (C) DeNA Co.,Ltd. All Rights Reserved. Developers Summit 2015 技術選択と アーキテクトの役割 19-A-3 February 19, 2015 Toru Yamaguchi Senior Architect Platform System Division DeNA Co., Ltd. 2. Copyright (C) DeNA Co.,Ltd. All Rights Reserved. Developers Summit 2015 自己紹介  会社 ⁃ 株式会社ディー・エヌ・エー  組織 ⁃ システム部プラットフォームシステム部  役職 ⁃ シニアアーキテクト  活動 ⁃ 前 Japan Perl Association 理事 ⁃ Perl Monger ⁃ Identity Confere

    技術選択とアーキテクトの役割
  • “キャッシュ”が新しいRAMとなる | POSTD

    これは Defrag 2014 の講演内容です。 テクノロジに長く従事することの(数少ない)利点の1つは、いくつもの技術サイクルの始めから終わりまでを見ることができるということです。いかにしてブレークスルーが実際に広まるかを見られるのです。サイクルの曲線の一部分しか見なければ、全体を正確に測り知るのは難しいでしょう。短期間で起きた進歩を見過ごしてしまうか、長期間で起こる進歩を見届けられないかのどちらかです。驚くべきことは世の中の事象がいかに速く変化するかではなく、その変化に呼応するエンジニアリングの変革がいかに遅いかということです。画像は、1891年に発明された、電話回線を自動で接続するストロージャー式自動交換機です。 1951年、デジタル交換機の最先端において、典型的な中央電話交換局はビクトリア期の特大サイズでした。ストロージャー式自動交換機は、通信中の全ての電話の信号を扱っていました。

    “キャッシュ”が新しいRAMとなる | POSTD
  • 監視アーキテクチャ(Sensu,Pingdom,Mackerel,StatusPage.io,PagerDuty)についてまとめてみる(2014年12月版) - Glide Note

    Sensu Advent Calendarに便乗して、Kaizen Platform, Inc.の2014年12月現在の監視アーキテクチャの話をちょっとしてみようと思う。 モニタリング領域 サービスを監視している領域 Pingdom Pingdom - Website Monitoring 外部ネットワークからのサービスの死活監視。アメリカ、ヨーロッパ、アジアなどの拠点からサービスの死活監視が出来るため、特定の地域からアクセス出来ない場合なのが検知出来る。 後述するstatuspage.ioとの連携で、障害を検知すると、サービスのステータス状況が自動で変わるようになっている Sensu Sensu | The open source monitoring framework. 監視フレームワーク サーバを内部ネットワークから監視するために利用 サーバのプロセス監視、サーバ間の疎通監視、エラ

  • LINE DEVELOPER DAY 2016 開催のお知らせ « LINE Engineers' Blog

    LINE株式会社は、2023年10月1日にLINEヤフー株式会社になりました。LINEヤフー株式会社の新しいブログはこちらです。 LINEヤフー Tech Blog saegusa2017-04-16Yoshihiro was a network engineer at LINE, responsible for all levels of LINE's infrastructure. Since being named Infra Platform Department manager, he is finding ways to apply LINE's technology and business goals to the platform. こんにちは。LINEでネットワークやデータセンターを担当している三枝です。2017年1月にJANOG39で登壇する機会を頂きましたので、今回

    LINE DEVELOPER DAY 2016 開催のお知らせ « LINE Engineers' Blog
    yasuharu519
    yasuharu519 2014/09/26
    トレーシングについて
  • 1