技術選定の審美眼(2025年版) 2025/05/14(水) 技術選定を突き詰める〜 Online Conference 2025〜 https://findy.connpass.com/event/349580/
3年前、趣味で開発するウェブアプリ向けの安価なAWSアーキテクチャについて記事を書きました。当時流行りの話題だった記憶です。 趣味Webサービスをサーバーレスで作る ― 格安編 - maybe daily dev notes 最近はAWSにも新たに色々なサービスが出てきて、以前とは一味違う構成を取れるようになっています。この記事では、アップデートされた格安かつスケーラブルなウェブアプリ向けAWSアーキテクチャを紹介します。 コード 本記事で紹介するアーキテクチャのリファレンス実装は、以前と同じリポジトリに公開しています。 github.com 主な機能は下記です: Next.js App RouterをAWS Lambda上にデプロイ CloudFront + Lambda関数URLによるレスポンスストリーミング対応 クライアントからサーバー、DBまでの型安全性 Aurora Server
「アーキテクチャ」に対する一般的なイメージ インフラ設計図のような青写真──機能やデータがどこに配置され、どう結び付くかを俯瞰で示す全体像。 システムの骨格とルール──技術スタックやモジュール分割、データフローなど「こう作るべき」を規定する枠組み。 将来への建築基準──性能・安全性・保守性を支え、変更や拡張の自由度を左右する長期的な基盤。 「アーキテクチャ」の本質的な意味 建築から哲学、テクノロジーまで幅広い分野で使われ、人間の行動様式や社会関係を規定する重要な要素となっている。 建築物が人の動きを決めるように、社会制度やテクノロジーのアーキテクチャも私たちの行動や権力関係に影響を与えている。 ローレンス・レッシグのアーキテクチャ アーキテクチャは、人々の行動を規制する4つの力(法、社会規範、市場、アーキテクチャ)の1つとして定義される 「ある選択肢を選びやすく/選びにくくする」 という性
はじめに 昨今、欧州や日本を中心に発展しつつある「データスペース」について、皆さんに手を動かしながら体験頂けるようなブログを書いてみます。 本記事の想定読者 ITの基礎的素養はあるけど、データスペースのことをあまり知らない方 様々な分野でデータ利活用を検討している方 そもそもデータスペースとは データスペースとは、参加する組織・企業同士が互いに信頼できる仕組みのもとで、安全かつ自由にデータをやり取りできる制度と技術基盤が整った空間のことを指します。 こうした制度・技術の構築・標準化により、業界・組織・企業間のコラボレーションを加速し、横断的な課題解決や新たなデジタルサービスの創出を支えることができます。 データスペースは、近年欧州や日本を中心に広がりを見せています。以下の図はデータスペースの概念を表しています。データスペースの各参加者は、「コネクタ」と呼ばれるソフトウェアを用いて、「カタロ
質問者は「なぜキャッシュメモリは速いのか」という物理的な理由や技術的な説明を求めています。一方、回答者は「キャッシュメモリは速くなければならない」という結果や目的に基づいた視点から回答しようとしています。質問者は原因を求めているのに対し、回答者は「目的」に焦点を当てた答えを提供しようとしています。これは、技術的な概念を理解する際にしばしば見られる認識のギャップです。 理想的な回答は、質問者が理解できる形で、キャッシュメモリの速度がなぜ重要であるか(目的)、そしてそれがどのように達成されるか(原因や物理的な説明)の両方を包含するものです。キャッシュメモリが高速である理由には、その物理的な設計、データアクセスの最適化、近接性、およびその他の技術的要因が含まれます。これらの要因を詳しく説明することで、質問者の疑問に対するより完全な理解を提供できます。
こんにちは、Azure Identity サポート チームの 夏木 です。 この度、Microsoft Entra サポート チームより、最近 Entra の利用を始めたお客様を対象に初学者向けのブログ シリーズを開始することといたしました。本記事は、その Entra ID 初学者向けシリーズの第 1 弾「条件付きアクセス 入門」です。 本記事の対象者 Microsoft Entra 条件付きアクセスの基本を理解したい方よくあるお問い合わせの事例を通じて実践的な知識を得たい方Microsoft Entra のサインイン ログの基本的な分析方法を知りたい方記事概要 本記事では、Microsoft Entra 条件付きアクセスを初めて学習/導入する方を対象に、基礎的な概念や設定方法を分かりやすく解説します。また、現場でよくある質問や課題を例に、具体的な対応策も紹介します。最後に、サインイン ロ
いわさです。 「Building Multi-Tenant SaaS Architectures」という海外の書籍があります。 著者は Tod Golding さんで、AWS のシニアプリンシパルソリューションアーキテクトの方です。 SaaS on AWS の領域でよく見かける方で、先日もラスベガスの re:Invent 2024 で講演されておりました。 マルチテナント SaaS を構築・運用するためには様々な課題に取り組む必要があるのですが、上記書籍はそれらの実用的なテクニック・戦略・パターンを解説したものです。 Building Multi-Tenant SaaS Architectures の日本語翻訳版が出るよ Building Multi-Tenant SaaS Architectures は 2024 年 4 月に発売されたのですが、来月 2025 年 1 月になんとこちらの
このように、層ごとに関心事の分離を行うことで、保守性の高い(変更容易性や再利用性等)アプリケーションを実現できます。 しかし、「トランザクション」においてはどうでしょうか。 トランザクションはビジネス領域においても、技術領域においても関心事がある内容です。 そういう曖昧なものは「ひとまず usecase 層に入れてしまえ」という方針になりがちです。 ですが、DB 固有の知識を usecase 層の関心事にしてしまっては、関心事の分離をするメリットが得られません。 そのため、関心事の分離を実現しつつトランザクション実装をする方法を模索してみました。 前提 1. クリーンアーキテクチャを採用している(オニオンアーキテクチャやレイヤードアーキテクチャも含む) そもそもビジネス知識と技術知識を分離していないアーキテクチャを採用している場合、メリットは得られません。 そのため、オニオンアーキテクチャ
Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? はじめに この記事はHow to Learn Software Design and Architecture | The Full-stack Software Design & Architecture Mapを翻訳したものです。 翻訳がおかしい箇所などあればご指摘頂けるとありがたいです。 元記事の著者: Khalil Stemmler(@stemmlerjs) 設計、アーキテクチャ、フロントエンド、ブロックチェーンに興味ある方是非Twitter(@show_clements)フォローしていただけると嬉しいです! 設計に関する記事
はじめに chike0905.hatenablog.com この記事は大変楽しく拝読したが、ブロックチェーン素人ながら気になる点がいくつかあったので指摘する。要旨は以下である。 タイトルで「できない」と言ってる割には「できるけど筋が悪い」だけに見える 研究中で結論が出ていないトピックを「できない」と呼ぶのは違うのではないか 文体が学術めいている割には用語の使い方がやや雑に見える ブロックチェーンに「不可能」な事にフォーカスすべき 浮足立つ界隈に対して問題提起するならば的を絞って指摘すべきで、容易に解決可能そうに見えてしまう批判はかえって混乱を招く恐れすらある ノードの独立性 各自で検証し、他のノードに依存するプロセスは本定義のブロックチェーンの動作の中には含まれない。 従って、他のノードに何かを問い合わせる必要もなく、信頼する第三者などは存在しない。 この部分はあまり正しく理解している人が
概要 本稿は、突然ムシャクシャした筆者が自分の考えるブロックチェーンの定義と、世間で言われているブロックチェーンの特性および応用例を批判するものである。 本稿は筆者の見解であり、所属組織の公式見解ではない。 ブロックチェーンの定義 そもそもブロックチェーンとはなんなのか。狭義には、「ブロック」の「チェーン」であることから、以下の定義をしたい。 データが、当該データ直前のデータの暗号学的ハッシュ値を持つリスト型のデータ構造 ここでは、そのデータの中に何を保持するかは一切考慮しない。 データがハッシュ値で連鎖することによって、リスト中の任意のデータのみを書き換えると、ハッシュチェーンの整合性が失われ、書き換えが行われたことを検知可能なデータ構造であると定義する。 しかし、世間で「ブロックチェーン」に興味を持つ諸氏はこの定義だけではいささか狭すぎると感じるだろう。 そこで、狭義のブロックチェーン
ソフトウェアアーキテクチャとは、ソフトウェアシステムの成功に欠かせない重要な土台です。そのためソフトウェア開発者には、効果的なアーキテクチャを実現するスキルが求められます。本書は、そうした効果的なアーキテクチャを設計、構築、維持するアーキテクトになるために必要なスキルや知識を、現代的な視点から整理して包括的に解説する書籍です。 ソフトウェアアーキテクチャの定義から、アーキテクトの役割、モジュールや結合、アーキテクチャスタイルといったアーキテクチャ設計の基礎、チームやステークホルダーと効果的にコラボレーションしていくために必要なソフトスキルまで、さまざまなトピックについて実践的な例とともに説明します。 正誤表 ここで紹介する正誤表には、書籍発行後に気づいた誤植や更新された情報を掲載しています。以下のリストに記載の年月は、正誤表を作成し、増刷書籍を印刷した月です。お手持ちの書籍では、すでに修正
by Rudolf Schuba UNIX系のOSに共通する機能の呼び出し方法などを定めたPOSIXは、「POSIXに準拠するならばどんな環境でも動作する」ことを保証する規格です。POSIXは長年移植可能なアプリケーションの開発を支えてきましたが、システム管理者のチャールズ・フィッシャー氏は「POSIXがマルチコアCPUの能力を制限する要因となっている」と指摘し、「xargs」コマンドを例として具体的な説明を行っています。 Parallel shells with xargs: Utilize all your cpu cores on UNIX and Windows | Linux Journal https://www.linuxjournal.com/content/parallel-shells-xargs-utilize-all-your-cpu-cores-unix-and-
現象学者たちとサイバネティクス「サイバネティクス」なるものに興味を持った経緯としては、メルロ=ポンティが『眼と精神』で一章まるごと使ってサイバネティクスを批判しているからでした。長いのですが引用します。 世界を名目的に定義すれば、世界とは私たちの操作の対象Xである、となろうが、そのように語ることは、科学者の認識のあり方を絶対視することであり、それはまるで、かつて存在し、また現に存在しているすべてのものを、たんに実験室に入るためだけに存在してきたかのように見なすことである。「操作的」思考はある種の絶対的人工主義となり、サイバネティクスのイデオロギーに見られるように、そこでは人間の創造活動は情報の自然的プロセスから派生したものとなってしまうが、じつは、そのプロセス自身、人間機械をモデルに考えられたものなのである。もしもこの種の考え方で人間と歴史を捉えようとするならば、そしてもし、私たちが直接的
1985年にAppleを追放されたスティーブ・ジョブズ氏が創業した「NeXT」は教育用・ビジネス用のワークステーションのメーカーで、1996年にAppleに買収され、ジョブズ氏がAppleに返り咲くきっかけとなりました。NeXTが開発したオブジェクト指向型OS「NeXTSTEP」はその後のmacOSやiOSの基盤となっています。さまざまな質問に対して専門家が回答する質疑応答サイト「Quora」に投稿された「NeXTのエンジニアはどんな感じで働いていたのでしょうか?ジョブズ氏は普段から従業員と交流していたのでしょうか?」という質問に対して、当時を知るエンジニアたちが回答しています。 What was it like to be a software engineer at NeXT? Did workers interact with Steve Jobs? - Quora https://
はじめに なんらかの理由によってOSやOSカーネルに興味を持つ人は多々います。しかし、その次のステップとしてどんな本を読めばいいんだろうと思っている人はこれまたいっぱいいます。そこで、長年Linuxカーネルにかかわってきた筆者がこれまでに読んでよかったと思うものについてここの列挙しました。紹介するのは本だけであって、記事は省いています。もう一点、筆者が書いたものは省いています。 OSそのものに興味を持った人は、その後に興味の方向が次のような二つに分かれることが多いと筆者は考えています。 オレオレOSを作りたい 既存のOSを改造したい この仮説をもとに、それぞれについて筆者がかつて真面目に読んだ本の中から「自作OS」および「Linuxカーネル」というキーワードでよかったものを挙げておきます。Linux以外の既存OSについては語れるほどの知識はないので書いてません。 筆者について 本の良し悪し
2019年9月26日紙版発売 2019年9月26日電子版発売 林高勲 著,川合秀実 監修 B5変形判/736ページ 定価4,048円(本体3,680円+税10%) ISBN 978-4-297-10847-2 Gihyo Direct Amazon 楽天ブックス 丸善ジュンク堂書店 ヨドバシ.com 電子版 Gihyo Digital Publishing Amazon Kindle ブックライブ 楽天kobo honto 本書のサポートページサンプルファイルのダウンロードや正誤表など この本の概要 現在広く普及している,x86系CPU搭載のコンピュータ。 本書はOSの機能を実装しながら,その姿を明らかにしていきます。 第1部ではまず,ハードウェア,ソフトウェアの基本概念や,CPUとOSの関係など,コンピュータの核となる理論を丁寧に解説します。 第2部では,x86系コンピュータに対象を絞り
改めて ソフトウェアアーキテクチャ GUI のアーキテクチャの歴史を調べてみたくなった。本来の MVC とは何か?何が正しくて何が間違っているか?も重要なのだが、それよりは、なぜそれが生まれたのか?何を解決しようとしたのか?どのような問題点が生まれて、それをどう工夫して解決・発展してきたのか?を知りたい。しかし、そういうことがまとまっている日本語の情報が少ないので、自分で色々かいつまんでメモしておく。 MVC の原点は 70 年代にまで遡り、実装としては Smalltalk-80 のクラスライブラリとして実装されたのが最初だと思われる。しかし、後世に大きな影響を及ぼしたポイントをいくつか持ちつつも、当時のアーキテクチャが現代においてそのまま利用されているケースはほぼないといっていい。したがって、単に MVC といった時には大抵最初期の MVC を指すことは少なく、区別するために最初期の M
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く