並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 40 件 / 3065件

新着順 人気順

レイテンシーとはの検索結果1 - 40 件 / 3065件

  • NTT フレッツ光における通信速度などの現状について、背景や仕組みから正しく理解する 2020

    会社でフルリモート体制が築かれるにつれ、各スタッフの自宅の回線などについての相談を受けることが増えてきました。ということで、筆者 sorah の見解として 2020 年の NTT フレッツ光網について、主に通信速度や輻輳についての問題を理解するための背景と仕組みを説明しようと思います。 理解が間違っていたら教えてください。なるべく総務省や NTT の資料からソースを集めてきた上で説明していますが、出典不明の情報も混ざっているかもしれません。できるだけ具体的な出典を文単位で示していますが、複数の資料に渡る複雑なトピックに関しては文末に纏める形になっています。 技術的な意味での細かい解説よりも複雑な事情や背景の説明が中心です。フレッツ光とか NGN とか IPoE とか IPv6 とか v6 プラス・アルファみたいな言葉を聞いて、なんでそんな難しいんだと思った人も多いんじゃないでしょうか。エン

    • 質の高い技術文書を書く方法 - As a Futurist...

      大学や大学院で論文の書き方を鍛え上げた人たちには遠く遠く及ばないが、僕の様なはぐれもの1でも最近は Amazon 社内で文書の質が高いと評価してもらえるまでにはなった。Software Engineer として、コードでのアウトプットはもちろん大事だけど、文書のアウトプット(およびそれによって得られた実際のアウトプット)は同じだけ重要である2。今回は自分が最近どういうところに気をつけて技術文書を書いているのか、ということについて数年後の自分が忘れてないことを確かめられる様にまとめておく。 そもそも文書とは? 英語だと document。ここで指す(技術)文書とは、人間が読む文体で書かれた技術に関連する情報、といったものだ。具体的に言うと以下の様なものを想定している: 新しいプロジェクトの骨子を説明する資料 会議の叩き台となる 1 枚ペラ 本番環境に変更を加えるにあたっての包括的な情報や具体

        質の高い技術文書を書く方法 - As a Futurist...
      • 1000万件オーバーのレコードのデータをカジュアルに扱うための心構え - joker1007’s diary

        自分が所属している会社のメンバーの教育用資料として、それなりの規模のデータを扱う時に前提として意識しておかなければいけないことをざっくりまとめたので、弊社特有の話は除外して公開用に整理してみました。 大規模データ処理、分散処理に慣れている人にとっては今更改めて言うことじゃないだろ、みたいな話ばかりだと思いますが、急激にデータスケールが増大してしまったりすると環境に開発者の意識が追い付かないこともあるかと思います。 そういったケースで参考にできるかもしれません。 弊社は基本的にAWSによって運用されているので、AWSを前提にした様なキーワードやサービス名が出てきます。後、句読点があったり無かったりしますが、ご容赦ください。 追記: 社内用の資料の編集なのでかなりハイコンテキストな内容だから誤解するかもしれませんが、これらはそもそもRDBの話ではありません。(関係無くは無いけど) 1000万オ

          1000万件オーバーのレコードのデータをカジュアルに扱うための心構え - joker1007’s diary
        • データベースを遅くするための8つの方法

          はじめに Twitterのタイムラインを見ていたらバッチ系のプログラムで逐次コミットをやめて一括コミットにしたら爆速になったというのを見ました。当たり前でしょ、と思ったけど確かに知らなければ分からないよね、と思って主に初心者向けにRDBを扱うときの注意点をまとめてみました。 プログラミングテクニック的なところからテーブル設計くらいの範疇でDBチューニングとかは入ってないです。 自分の経験的にOracleをベースに書いていますが、他のRDBでも特に変わらないレベルの粒度だと思います。 大量の逐次コミットをする バッチアプリケーションでDBにデータをインサートすると言うのはかなり一般的な処理です。しかしデータ量が少ない時はともかく大量のインサートを逐次コミットで処理するとめちゃくちゃ遅くなります。数倍から十数倍遅くなることもあるので、10分程度のバッチが1時間越えに化けることもザラにあるので原

            データベースを遅くするための8つの方法
          • 最近ローカルLLMがアツいらしい

            最近、ローカルLLMがアツくなっているという話をtwitterでチラホラ見かける。 ローカルLLMって何じゃ?というと、オープンに公開されているモデルのウエイトをDLしてきて手元のPC上で推論させる事である。 オープンなAIモデルとは逆の存在として、モデルがDLできないクローズなAIモデルもある。 OpenAIやAnthropicのような最先端AI企業のクローズなAIモデルに比べて、オープンに公開されているオープンなAIモデルの性能は今でもかなり後れを取っている。 だから去年の間はあくまでAIの本命はChatGPTのようなクローズモデルであって、オープンなAIモデルなんて眼中にありませんみたいな風潮が無くはなかった。だが最近は風向きが少々変わってきている。 GPTのAPI高い問題 & OpenAIがAIベンチャー皆殺しにしてしまう問題 まず「結局GPTのAPIを叩いてサービス運営して成功し

            • Elon Musk は Twitter で何をしようとしているのか - The Decisive Strike

              まだ Twitter の一斉解雇をめぐる混乱は続いているようですが、この解雇を通じて見えてくる Elon Musk の意図を考えてみたいと思います。これは公開されている情報に基づく長山個人の推測に基づいた分析であって、正しさはいっさい保証されていません。 個人的な所感としては以下です。 まず第一に、Musk は、Twitter をメディア企業からエンジニアリング企業へと変質させようとしているんじゃないかと考えています。これは、「どの部署がレイオフ対象になったか」から見えてくることです。TechCrunch の記事によれば、米国でレイオフ対象になった主要なチームは、アクセシビリティ、機械学習倫理 (META: ML Ethics, Transparency & Accountability)、人権、キュレーション、PR (Comms)、SRE (Site Reliability Eng) な

                Elon Musk は Twitter で何をしようとしているのか - The Decisive Strike
              • 手軽に負荷テストができるツール「Taurus」がスゴい

                modules: jmeter: version: 5.4.1 # ここに書いてあるバージョンを勝手にダウンロードしてくれる properties: log_level.JMeter: WARN log_level.JMeter.threads: WARN system-properties: org.apache.commons.logging.simplelog.log.org.apache.http: WARN 既存ツールのラッパーとして動作 デフォルトでは内部的にJmeterが実行されますが、以下のようなツールで作成されたスクリプトを流用することが可能です。 JMeter Gatling Locust Selenium Vegeta つまり、さきほどはYAMLでシナリオが記述可能とは言いましたが、もちろん既存のスクリプトを流用できるってことです。 いままで作り上げてきたスクリプトや

                  手軽に負荷テストができるツール「Taurus」がスゴい
                • いま知っておきたいLinux─WebアプリがOSのプロセスとしてどのように見えるか? を運用に生かす|ハイクラス転職・求人情報サイト AMBI(アンビ)

                  いま知っておきたいLinux─WebアプリがOSのプロセスとしてどのように見えるか? を運用に生かす Webアプリを動かして負荷をかけると、OSのプロセスという観点ではどのように見えるのでしょう? それを通して運用やトラブルシューティングではどういったことが分かるのでしょう? Linuxカーネルの開発者でもある武内覚(sat)さんによる解説です。 こんにちは、sat(@satoru_takeuchi)と申します。 コンピュータが誕生してから現在まで、最終的にエンドユーザが意識するアプリケーション開発はどんどん楽になっています。先人たちのたゆまぬ努力の結果、アプリ開発者はOSや、そのさらに下にあるハードウェアのことをほとんど意識することなく開発ができるようになりました。 しかし、「作ったアプリが、OSレベルでどのように動いているか?」が今一つピンと来なくて、モヤモヤしていないでしょうか。それ

                    いま知っておきたいLinux─WebアプリがOSのプロセスとしてどのように見えるか? を運用に生かす|ハイクラス転職・求人情報サイト AMBI(アンビ)
                  • 「Linuxのしくみ」をもっと早く読んでおけばよかったと後悔した - ばーろぐわにる

                    きっかけ Linuxエンジニアとしての基礎力のなさを見抜かれ、これ読んでみるといいよとおすすめされたのがきっかけ。 gihyo.jp 大変お恥ずかしい話だが、自分はエンジニア7年目にして初めてLinuxについての本を読んだ。それまではなにか上手くいかないことがあればブログやQiitaを参考にコピペしてその場しのぎしていただけだった。 目次 第1章 コンピュータシステムの概要 第2章 ユーザモードで実現する機能 第3章 プロセス管理 第4章 プロセススケジューラ 第5章 メモリ管理 第6章 記憶階層 第7章 ファイルシステム 第8章 ストレージデバイス おもしろかったところ メモリ管理 プログラムは直接物理メモリにはアクセスしない。仮想メモリを通して物理メモリにアクセスする forkしたとき、仮想メモリは書き込み権限が付与されずに同じ物理アドレスが紐付いたままの状態。子プロセスで書き込みが走

                      「Linuxのしくみ」をもっと早く読んでおけばよかったと後悔した - ばーろぐわにる
                    • IPA のけしからん技術が再び壁を乗り越え、セキュアな LGWAN 地方自治体テレワークを迅速に実現

                      IPA のけしからん技術が再び壁を乗り越え、セキュアな LGWAN 地方自治体テレワークを迅速に実現 2020 年 11 月 3 日 (火) 独立行政法人情報処理推進機構 (IPA) 産業サイバーセキュリティセンター サイバー技術研究室 登 大遊 独立行政法人 情報処理推進機構 (IPA) 産業サイバーセキュリティセンター サイバー技術研究室は、このたび、できるだけ多くの日本全国の地方自治体 (市町村・県等) の方々が、LGWAN を通じて、迅速に画面転送型テレワークを利用できるようにすることを目的に、J-LIS (地方公共団体情報システム機構) と共同で、新たに「自治体テレワークシステム for LGWAN」を開発・構築いたしました。 本システムは、すでに 8 万ユーザー以上の実績と極めて高い安定性 を有する NTT 東日本 - IPA 「シン・テレワークシステム」をもとに、LGWAN

                        IPA のけしからん技術が再び壁を乗り越え、セキュアな LGWAN 地方自治体テレワークを迅速に実現
                      • AWSアカウントを作ったら最初にやるべきこと 〜2021年版〜 #devio2021 | DevelopersIO

                        ログ・モニタリングのやるべきこと AWS CloudTrail の設定 CloudTrail は AWS リソースを「誰が」「いつ」「何に」対して「どうような」操作をしたのかを記録するサービスです。 ログの長期保管の設定をしておくことで、トラブル発生時の解析等に利用できます。 有料です(無料利用枠もあります) [YouTube] AWS CloudTrailを触ってみた CloudTrail Insights を利用することで、機械学習により異常なアクティビティを検出することもできます。 ログは S3 と CloudWatch Logs に転送でき、S3 に保管しているログは Athena により検索することもできます。 Athena を利用する場合は、事前に CloudTrail 用のテーブルを作成しておき、検索方法を習熟しておきましょう。 インシデントが発生してから習熟では対応が遅くな

                          AWSアカウントを作ったら最初にやるべきこと 〜2021年版〜 #devio2021 | DevelopersIO
                        • CPUとGPUのマルチスレッディングの違いについて - arutema47's blog

                          "Locality is efficiency, Efficiency is power, Power is performance, Performance is King", Bill Dally マルチスレッディングとは? CPUとGPUのマルチスレッディングの違いをブログにまとめていたけど例によって誰も興味なさそう— arutema47 (@arutema47) 2021年8月16日 つぶやいたら読みたい方が多そうだったので完成させました。 マルチスレッディングとはメモリ遅延を隠蔽しスループットを上げるハードウェアのテクニックです。 ただCPUとGPUで使われ方がかなり異なるため、その違いについて考えてみる記事です。 (SIMDについて並列プログラミングの観点から触れるべきでしたが、時間無いマルチスレッディングに注目するため初版では省きました。) 本記事について 本記事はCPUとG

                            CPUとGPUのマルチスレッディングの違いについて - arutema47's blog
                          • 【2020年】AWS全サービスまとめ | DevelopersIO

                            このエントリは、2018年、2019年に公開したAWS全サービスまとめの2020年版です。これまではいくつかに分割して公開していましたが、1エントリにまとめてほしいという要望をもらっていたため、今年は1エントリに集約してみました。 こんにちは。サービスグループの武田です。 このエントリは、2018年、2019年に公開した AWS全サービスまとめの2020年版 です。これまではいくつかに分割して公開していましたが、1エントリにまとめてほしいという要望をもらっていたため、今年は1エントリに集約してみました。どちらがいいのか正直わからないので、フィードバックなどあれば参考にさせていただきます。 2020-01-08 リクエストがあったためAmazon Mechanical Turkを追加。 2018年まとめ 【2018年】AWS全サービスまとめ その1(コンピューティング、ストレージ、データベー

                              【2020年】AWS全サービスまとめ | DevelopersIO
                            • 個人開発を黒字にする技術 - k0kubun's blog

                              最近は個人開発は自分のOSSのメンテで手がいっぱいになってしまったのでサービス開発のようなものは普段あまりやらないのだが、大学院*1で今学期、何作ってもよいという感じの授業を取ってWeb/iOS/Androidアプリ*2を全て作るという体験をする中で、たまたま個人開発のコストを抑える活動をしたので、その時に調べたり考えたりしたことを書いておく。 Herokuで無料にする Herokuでは毎月550時間free dynoが使え、クレジットカードを登録しておくと更に450時間、合計1000時間無料で使える。Herokuは30分アクセスがないと一旦停止するが、今回授業で作ったサービスでこれを使い切らないことは明らかだったので最初はこれでセットアップした。セットアップも簡単だし、PostgreSQLも無料でついてくる。 ただ、コールドスタートに10秒くらいかかり、これがこのサービスではUX的に致命

                                個人開発を黒字にする技術 - k0kubun's blog
                              • 最近よく見る 1000 円くらいの HDMI キャプチャーカード (MS2109) についてのメモ - polamjaggy

                                2023/8/21 追記 もっと良いやつ出てるのでそっちを買いましょう polamjag.hatenablog.jp 以下は 2020/9 時点の内容です 今北産業 HDMI キャプチャーボード的なやつって最低でも 1 万円くらいはするよね、みたいな常識を破壊された。個人的には完全にお値段以上 ある程度制限や難はあるものの、それを受け入れられるなら驚くほど普通に使えてしまっている 音声入力の挙動に難があるのが一番大きそう このあたりの話題。 pc.watch.impress.co.jp note.com 似たようなのを 2 台 AliExpress で買って持っている。似たようなのというだけであって、サウンドハウスのそれや Amazon で売られてる似たような商品に以下の話題が当てはまるとは限らないし、この note のエントリで言及されているデバイスについても然り、という感じです。値段が

                                  最近よく見る 1000 円くらいの HDMI キャプチャーカード (MS2109) についてのメモ - polamjaggy
                                • 2020年現在のNewSQLについて - Qiita

                                  Disclaimer 当記事はNewSQL開発ベンダの技術ブログや各種論文、その他ニュースサイト等の内容を個人的にまとめたものです。 そのため、理解不足等に起因する誤解・誤認を含む可能性があります。更なる理解が必要な方はリファレンスに挙げた各種文献を直接参照下さい。技術的な指摘は可能であれば取り込み修正しますが、迅速な対応はお約束できません。 NewSQLの解説は二部構成 当記事は前編でNewSQLの概要編となる。 全体の目次は下記である。 NewSQLとは何か NewSQLのアーキテクチャ NewSQLとこれまでのデータベースの比較 NewSQLのコンポーネント詳解 1章から3章までの内容を当記事で解説する。 4章はさらに詳細な技術的解説となり、後編の「NewSQLのコンポーネント詳解」で記述している。 こちらも合わせて一読いただきたい。 1. NewSQLとは何か NewSQLとは、海

                                    2020年現在のNewSQLについて - Qiita
                                  • クックパッドを退職しました - 昼メシ物語

                                    2024年1月末まで在籍していますが昨年12月に業務は終えていて、いまは有休消化期間中です。2010年から約14年間勤めてきた、自分の生き様そのものとも言えるクックパッドを離れるのには、表現しきれないほど大きく、複雑な思いがあります。 僕がこの14年間でやってきたことを振り返ってみます。 入社 クックパッドに入社した時は新卒3年目相当で、26歳でした。もともと料理と Ruby が好きで、当時まだ珍しかった Ruby on Rails でサービス開発をしているらしいという点や、当時からネットウォッチしていた @ryo_katsuma さんが所属していること、直属の上司の井原さんが転職したことが決め手になり、体当たりで飛び込みました。当時の僕はほとんど実績もなく、入れてもらえるかギリギリのところだったと思いますが、おそらく井原さんが頑張って交渉してくれたのだと思います。本当に感謝しています。こ

                                      クックパッドを退職しました - 昼メシ物語
                                    • はてなブログのキャッシュ周りをきちんと改善したら、アプリケーションサーバの台数を半分にできた話 - Hatena Developer Blog

                                      はてなブログでSREをやっているid:cohalzです。 2019年12月頃からid:utgwkkやid:onkとともに、はてなブログにおけるキャッシュ周りの改善を行いました。その結果、次のような成果が得られました。 ブログ記事のキャッシュヒット率が、1日平均で8%から58%に向上 アプリケーションサーバの台数を、以前の半数以下に削減 DBに届くリクエスト数が、以前の3分の2まで減少 レスポンスタイムの平均が、以前の8割まで減少 この記事では、実際にどういった改善を行ったのか、その際に気をつけたことや大変だったことを紹介します。 はてなブログがVarnishを導入した経緯と課題 開発合宿をきっかけに問題が明らかになる 進め方をまず考える ホストのメモリをできるだけたくさん利用する メモリを積んだホストでなぜかレイテンシが悪化 キャッシュが分散しないようVaryヘッダを使う デバイス情報を適

                                        はてなブログのキャッシュ周りをきちんと改善したら、アプリケーションサーバの台数を半分にできた話 - Hatena Developer Blog
                                      • ソフトウェアアーキテクチャの基礎

                                        ソフトウェアアーキテクチャとは、ソフトウェアシステムの成功に欠かせない重要な土台です。そのためソフトウェア開発者には、効果的なアーキテクチャを実現するスキルが求められます。本書は、そうした効果的なアーキテクチャを設計、構築、維持するアーキテクトになるために必要なスキルや知識を、現代的な視点から整理して包括的に解説する書籍です。 ソフトウェアアーキテクチャの定義から、アーキテクトの役割、モジュールや結合、アーキテクチャスタイルといったアーキテクチャ設計の基礎、チームやステークホルダーと効果的にコラボレーションしていくために必要なソフトスキルまで、さまざまなトピックについて実践的な例とともに説明します。 正誤表 ここで紹介する正誤表には、書籍発行後に気づいた誤植や更新された情報を掲載しています。以下のリストに記載の年月は、正誤表を作成し、増刷書籍を印刷した月です。お手持ちの書籍では、すでに修正

                                          ソフトウェアアーキテクチャの基礎
                                        • 6万ミリ秒でできるLinuxパフォーマンス分析 | Yakst

                                          NetflixのシニアパフォーマンスアーキテクトであるBrendan Gregg氏による、Linuxサーバにログインして60秒でまず調べることのまとめ。 パフォーマンス問題でLinuxサーバーにログインしたとして、最初の1分で何を調べますか? Netflixには、多数のEC2 Linuxからなるクラウドがあり、そのパフォーマンスを監視したり調査したりするための数々のパフォーマンス分析ツールがあります。その中には、クラウド全体にわたる監視を行うAtlasや、オンデマンドにインスタンスの分析を行うVectorがあります。これらのツールは多くの問題を解決する手助けをしてくれますが、各インスタンスにログインし、標準的なLinuxパフォーマンスツールを実行する必要がある場合もあります。 この記事では、すぐ使えるはずの標準的Linuxツールを使いコマンドラインにおいて、最適化されたパフォーマンス調査を

                                          • フロントエンドのパフォーマンスチューニングを俯瞰する - 30歳からのプログラミング

                                            去年からフロントエンドのパフォーマンスについて断続的に学んでいるが、自分の頭のなかにある知識はどれも断片的で、まとまりを欠いているような感覚があった。 知識と知識がつながっておらず、各施策が何のために行われるのかも、必ずしも自明ではなかった。何となく「パフォーマンスに効果がある」と言ってしまうが、それが何を指しているのかは実は曖昧だった。 このような状態では新しい知識を得ていくのが難しいというか、効率的に行えないように思えた。議論の背景が分からないし、文脈や問題意識を上手く掴めないから。何の話をしているのかよく分からない、という状態になりがち。書かれてあることの意味は分かっても論旨を掴めているわけではないから、自分のなかに定着しない。 そこで、現時点で自分が知っていることを整理して、自分なりに分類しておくことにした。 当たり前だが、どのテクニックがどの程度有効なのかは、状況によって違う。

                                              フロントエンドのパフォーマンスチューニングを俯瞰する - 30歳からのプログラミング
                                            • 楽器を弾けない人でも楽器演奏を存分に楽しめるKANTAN Playが無料で公開。10万曲以上の専用楽譜も無料で入手可能|DTMステーション

                                              Windows、Macはもちろん、iPhone/iPad、Androidでも、インストール不要ですぐに楽しめるユニークな楽器アプリ、KANTAN Playというものが無料で公開されています。これは楽器が苦手な人でも、楽譜がまったく読めない人でも指一本ですぐに弾けてしまうという画期的なアプリです。KANTAN Musicという音楽システムにのっとったアプリであり、これまでDTMステーションでも何度か紹介してきた電子楽器、InstaChordの姉妹ソフト的なものでもあります。 KANTAN Musicは、InstaChrodの開発者である、ゆーいち(永田雄一:@u1_nagata)さんが考案したものですが、KANTAN Playというアプリは、ゆーいちさんとコラボする形で、日本におけるVRの先駆者であるGOROman(近藤義仁:@GOROman)さん、それにオーディオプログラマである、よしたか

                                                楽器を弾けない人でも楽器演奏を存分に楽しめるKANTAN Playが無料で公開。10万曲以上の専用楽譜も無料で入手可能|DTMステーション
                                              • 小規模(5〜20人)オフィスのネットワーク構築例

                                                背景 株式会社マインディアCTOの@matsubokkuriです。 事業規模の拡大に伴いオフィスの移転がありました。それに伴い社内ネットワークインフラの構築しました。オンサイトで働く人は約10名。エンジニアは私1名なのでインフラ整備を自分でやるか外注するかという選択でしたが、外注するためにはRFP作るのが面倒だし費用がかかるのでDIYしました。 中小企業のネットワーク構築の記事は5年前の@wadapさんの記事が詳しいです。その記事以降、まとまった社内LAN構築の良い感じのノウハウ記事を見つけられませんでした。その5年の差分を埋めるためにも記録を書いておきます。 要求定義 ゲスト用ネットワークの分離(インターネット回線、LAN回線) 将来のシステム監査で指摘されるであろうことなので。 トラフィックのQoS制御のため。 インターネット上のホストにおいてグローバルIPアドレスによるアクセス制限が

                                                  小規模(5〜20人)オフィスのネットワーク構築例
                                                • DX意味わからん。「IT革命」と何が違うの?という話|広木大地(日本CTO協会理事/レクター取締役)

                                                  はじめにこの記事は、Engineering Manager Advent Calendar 2020の24日目の記事す。 職種を越えた働き方を模索するWeb Engineerのtrebyさんと、技術を突き詰めたいiOS Developerのbanjunさんの二人のパーソナリティをつとめるpodcast「きのこるエフエム」でお話してきた今話題のキーワードDXについてのお話を再編して記事にしたものです。 実際のpodcastについては以下からどうぞ。 いつの間にか"DX"がデジタルトランスフォーメーションにとられてた。trebyさん(以下敬称略) これは、我々のマイブームというか、最近、「DXっていいよね?」っていうふうに私が謎掛けをしますと、banjunさんが、「DX、わからん!」というふうに返すんです。 banjunさん(以下敬称略) 「DXって何ですか?何がいいんですか?」っていう話です

                                                    DX意味わからん。「IT革命」と何が違うの?という話|広木大地(日本CTO協会理事/レクター取締役)
                                                  • 『ソフトウェアアーキテクチャの基礎――エンジニアリングに基づく体系的アプローチ』 - snoozer05's blog

                                                    翻訳を担当した書籍『ソフトウェアアーキテクチャの基礎――エンジニアリングに基づく体系的アプローチ』(オライリー・ジャパン)が3月8日に発売されます。本書は、2020年1月に出版されたMark Richards, Neal Ford著『Fundamentals of Software Architecture』(O'Reilly Media)を全訳したものです。 www.oreilly.co.jp ソフトウェアアーキテクチャとは、ソフトウェアシステムの成功に欠かせない重要な土台です。そのためソフトウェア開発者には、効果的なアーキテクチャを実現するスキルが求められます。本書は、そうした効果的なアーキテクチャを設計、構築、維持するアーキテクトになるために必要なスキルや知識を、現代的な視点から整理して包括的に解説する書籍です。 ソフトウェアアーキテクチャの定義から、アーキテクトの役割、モジュールや

                                                      『ソフトウェアアーキテクチャの基礎――エンジニアリングに基づく体系的アプローチ』 - snoozer05's blog
                                                    • 2020年のフロントエンドエンジニアの技術スタックの一例

                                                      年の瀬なので、私自身が今年利用した技術をベースに技術スタックをまとめてみようと思います。 とはいえ Web Standard といった広い対象から、フレームワークやライブラリまで、粒度の違うものを全て言及するのは無理があるというもの。特に強く言及できるものは個別で説明しつつ、最後に利用する機会がなかったものも最後に記載する形で。 以下常体。 追記: マイナー企業のようなので一応書いておきますが、筆者は本業ではLINE株式会社という組織でいわゆるエンジニアリングマネージャーと言われるような業務とその採用に関わる仕事をしています。 利用した技術一覧 HTML/CSS/JS みたいなことを書いてるとキリがないので、独断と偏見で区分けして適宜漉いています。特に利用する機会が多かったものは太字でピックアップ。 Frontend Language/Platform TypeScript JavaScr

                                                        2020年のフロントエンドエンジニアの技術スタックの一例
                                                      • しずかなインターネットの技術構成

                                                        こんなWebサービスをリリースしたので、技術的な話をまとめておこうと思います。 元々このサービスは、趣味の延長線のような感じで開発を始めました。競合にあたるnoteやはてなブログなどのサービスが確固たる地位を築いているということもあり、「お金にはならないだろうけど、自分の趣味を詰め込んだものにしよう」というゆるい気持ちで開発を続けています(楽しい)。 選定の方針 趣味と言っても文章投稿サービスなので、ユーザーが少数であったとしても長期間運営しなければなりません。そのため、ユーザー数が少なければランニングコストが数千円/月以下、ユーザー数が増えたときは段階的にコストが上がるように選定を行いました。 アプリケーション フルスタックNext.jsアプリケーションをCloud Runにデプロイしています。各APIエンドポイントはNext.jsのAPI Routesで生やしています。 Next.js

                                                          しずかなインターネットの技術構成
                                                        • AWSのグローバルIPの空間はインターネットなのか? - NRIネットコムBlog

                                                          こんにちは佐々木です。 先日、VPCのFAQに追加された項目が話題となっていました。2 つのインスタンスがパブリック IP アドレスを使用して通信する場合、トラフィックがインターネットを経由するかどうかという問いに対して、AWSがノーと言っています。これは、どういうことなのでしょうか? これがプライベートネットワークの通信と明示された意味は大きい 『Q:2つのインスタンスがパブリック IP アドレスを使用して通信する場合、またはインスタンスが AWS のサービスのパブリックエンドポイントと通信する場合、トラフィックはインターネットを経由しますか?』https://t.co/uy26KyCZKn— Takuro SASAKI (@dkfj) 2021年4月22日 このことを起点に、インターネットとは何か、AWSのネットワークの現状について考察してみます。難しい事を言っていますが、みんな疑問に

                                                            AWSのグローバルIPの空間はインターネットなのか? - NRIネットコムBlog
                                                          • 令和時代の API 実装のベースプラクティスと CSRF 対策 | blog.jxck.io

                                                            Intro CSRF という古の攻撃がある。この攻撃を「古(いにしえ)」のものにすることができたプラットフォームの進化の背景を、「Cookie が SameSite Lax by Default になったからだ」という解説を見ることがある。 確かに、現実的にそれによって攻撃の成立は難しくなり、救われているサービスもある。しかし、それはプラットフォームが用意した対策の本質から言うと、解釈が少しずれていると言えるだろう。 今回は、「CSRF がどうして成立していたのか」を振り返ることで、本当にプラットフォームに足りていなかったものと、それを補っていった経緯、本当にすべき対策は何であるかを解説していく。 結果として見えてくるのは、今サービスを実装する上での「ベース」(not ベスト)となるプラクティスだと筆者は考えている。 CSRF 成立の条件 例えば、攻撃者が用意した attack.examp

                                                              令和時代の API 実装のベースプラクティスと CSRF 対策 | blog.jxck.io
                                                            • Amazon ECS でのコンテナデプロイの高速化

                                                              Amazon ECS でのコンテナデプロイの高速化 この記事は同僚の Nathan Peck (@nathanpeck)が書いた記事 “Speeding up Amazon ECS container deployments” を翻訳し、加筆・修正したものです. 元記事を ECS ユーザに紹介する機会が何回かあったので、せっかくなので翻訳することにしました. コンテナのオーケストレーションは非常に複雑な問題の一つです. アプリケーションコンテナのデプロイのために、相互にやり取りを行う複数の異なるコンポーネントが存在します. あなたのアプリケーションを実行したオーケストレータは、その実行されたアプリケーションが Web トラフィックを受け取る用意ができているかどうかについて判断する必要があります. その後そのアプリケーションはスケールダウンされたり、あるいは新しいバージョンのアプリケーション

                                                                Amazon ECS でのコンテナデプロイの高速化
                                                              • エンジニアリングスキルで捉えるチームマネジメント - mtx2s’s blog

                                                                チームのマネージャーが、自らの責務をジョブディスクリプションとして明文化することは難しい。職務内容や権限を、断片的にしか書けないかもしれない。もしそうなるなら、実務も断片的になっている可能性がある。 チームマネジメント(組織マネジメント)という活動は、個々のマネージャーの経験や関心によって、断片的になりやすいように感じている。断片的とは、マネジメント活動が、責務の一部の領域に偏ってしまっていたり、問題を検知してはじめてその領域がマネジメント範囲であることを知る、といった様子を指している。 このような状態になる背景は、マネージャーにとって、マネジメントが、日々の実務を通して蓄積された経験に基づく活動になっているからではないか。マネージャーは孤独だ。ひとりでその責務を担う。エンジニアとは違い、チームで協働するわけではない。だから、形式知として言語化されず、個人の経験として暗黙知にとどまる。その

                                                                  エンジニアリングスキルで捉えるチームマネジメント - mtx2s’s blog
                                                                • CORSの仕様はなぜ複雑なのか

                                                                  Webアプリケーションを実装していると高確率で CORS の問題にぶつかります。CORSがどのようなものかはリンクしたMDNなど既存の解説を読むのが手っ取り早いと思いますが、「なぜそのように設計されたのか」という観点での説明はあまり見ないため、昔の資料の記述や現在の仕様からの推測をもとに整理してみました。 CORSとは 現代のWebはドメイン名をもとにした オリジン (Origin) という概念 (RFC 6454) をもとに権限管理とアクセス制御を行っています。その基本となるのが以下のルールです。 Same-origin policy (同一生成元ポリシー): 同じオリジンに由来するリソースだけを制御できる。 上記Wikipedia記事によるとSOPの概念は1995年のNetscape 2.02に導入されたのが最初のようです。当時のドキュメンテーションを読む限り、これはウインドウ越しに別

                                                                    CORSの仕様はなぜ複雑なのか
                                                                  • GAFAコーディング面接こんな感じでした(システムデザイン編) - yambe2002’s diary

                                                                    前回の続きです。今回はシステムデザイン編。 実体験にもとづいて、なるべく雰囲気を再現しようとしてますが ・問題はすべて自作 ・人物、会話等はすべてフィクション なのでよろしくお願いします。実際の会話はNDAにより公開できません。 同じくらいの難易度の問題を、こんなレベルでやり取りして、最終的にはお祈りされました。 ~前回までのあらすじ~ GAFAのコーディング面接1回目を何とか乗り切ったyambe2002だが、休む間もなく次の面接が始まって辛い。 出題 ぼく「………」 面接官「あれ?yambe2002?大丈夫?」 ぼ「…はっ!ごめんちょっとボーっとしちゃった。大丈夫大丈夫。えーと、何だっけ?」 面「あー、分かる分かる!面接の連続で疲れるよねー!ぼくの時もそうだったよ」 ぼ「ははは…」 面「じゃもう一回言うね。ぼくからの問題はね、ミュージシャン名で検索すると、関係するコンサートの情報を表示す

                                                                      GAFAコーディング面接こんな感じでした(システムデザイン編) - yambe2002’s diary
                                                                    • Elasticsearch運用ノウハウ | メルカリエンジニアリング

                                                                      こんにちは、メルカリMicroservices SREチームの藤本(@jimo1001)です。 私は現在、Embedded SRE として サーチインフラチームに入り活動しています。このサーチインフラチームは、Elasticsearchを使用した検索基盤を管理し、様々なマイクロサービスに検索機能を提供するチームです。この検索基盤は非常に巨大なプラットフォームで、メルカリ全体のマシンリソースの高い割合を占めており、メルカリの検索を支える非常に重要なものです。私の Embedded SRE としてのミッションは検索基盤の信頼性の向上と自動化を推進することです。 今回は、メルカリの検索基盤で利用している Elasticsearch における運用のノウハウを紹介したいと思います。 Elasticsearch とは Elasticsearch は、Elastic社が開発する Apache Lucen

                                                                        Elasticsearch運用ノウハウ | メルカリエンジニアリング
                                                                      • 銀行の基幹系システムはなぜ古臭いのか?|つっちーさん

                                                                        タイトル詐欺である。今回も反省せずに続きといきたい。 前回も示したが、ざっくりとした銀行の基幹系システムは「勘定系」「情報系」「チャネル系」の三つの構成になっているという図が上である。ざっくりとしたものなので、実際にはもっと複雑(特にメガバンクでは)だし、これがあるのにアレがない、とかいったものはある。細かいところを気にしすぎると禿げるぞ。 今回は、銀行の基幹系がなぜ古臭いのかという話をしたい。古臭いと言ってもいろいろあって、特にエンジニア界隈からは「メインフレームを使ってる」とか「COBOLみたいなカビの生えた古代言語を使ってる」とか、とにかくイケてないシステムの代表例のように言われることが多い。対して、預金者の側からはネットとの親和性だとかサービス面の不満からくるイケてないという話が多いと思うのだが、これはどちらかというとシステムの話ではなくて、サービス設計とかその背景になるビジネスモ

                                                                          銀行の基幹系システムはなぜ古臭いのか?|つっちーさん
                                                                        • PayPayの1秒あたり1000決済への道のり

                                                                          パフォーマンス・チューニングに関するブログの第1回目です PayPayは、日本でもっともよく知られているQR決済サービスとなりました。2018年10月5日のローンチ後、2018年12月より実施した100億円あげちゃうキャンペーンは、その後のプロダクトの急成長に合わせたシステムのスケール拡張という長い道のりのスタート地点でもありました。 ここ数ヶ月の新規ユーザーの増え方[1]を見るにつけても、PayPayが驚異的な成長を続けていることは間違いありません。スタートアップ企業はまるで竹のように成長するとはこのことではないでしょうか。(竹は24時間で最大約90cmも伸びるそうです) PayPayの成長速度は? ユーザー数の伸び 2018年10月に初めてユーザーが増え、キャンペーンや日々メディアで報道されることによるユーザー数の増加もあり、1年後には1500万人を突破しました。2020年5月現在、サ

                                                                            PayPayの1秒あたり1000決済への道のり
                                                                          • ゼロから作る時系列データベースエンジン

                                                                            軽量な時系列データベースエンジンをスクラッチで開発する機会があったので、どのように実装したのかを必要知識の解説を交えながらまとめていきます。 実装はGo言語によるものですが、本記事のほとんどは言語非依存な内容となっています。 モチベーション 筆者は時系列データを扱うツールをいくつか開発しています。その中の一つであるAliは負荷テスト用のcliツールで、メトリクスをクライアント側でリアルタイム描画できるのが特徴です。リクエスト毎にレイテンシーなどの計測結果が際限なく書き込まれてくる中、同時に一定のクエリパフォーマンスが求められます。 これは言ってしまえば、簡易クエリ機能付きのpush型モニタリングシステムを単一ホストで実現するようなものです。 以前までの実装ではヒープ上の可変長配列にデータポイントを追加していくだけだったので、当然ながら時間の経過とともにメモリ使用量が増加していく問題を抱えて

                                                                              ゼロから作る時系列データベースエンジン
                                                                            • 在宅勤務環境の継続的改善 - クックパッド開発者ブログ

                                                                              コーポレートエンジニアリング担当 VP の @kani_b です。 新型コロナウイルス感染症の拡大リスクを鑑みて、従業員や関係者の皆さまの安全確保を目的に、クックパッドでは 2/18 (火) から、国内拠点の全従業員(正社員、契約社員、パート・アルバイト、派遣社員、通常在席の業務委託)を対象に在宅勤務の原則化を実施しています。現在は5月末まで継続する予定としています。 クックパッド、新型コロナウイルス感染症の拡大に伴う在宅勤務(Work from Home)を5月末まで継続のお知らせ | クックパッド株式会社 また、クックパッドでは、今の状況にあわせた、料理に関する様々な取り組みを進めています。そうした取り組みを集めたページをオープンしていますので、こちらもぜひご覧ください。 私たちは、料理でつながろう | クックパッド株式会社 さて、在宅勤務が開始された 2 月に、在宅勤務に対する取り組

                                                                                在宅勤務環境の継続的改善 - クックパッド開発者ブログ
                                                                              • リモートワーク社員80人分のVPN環境を低コストかつスケーラブルに提供する方法

                                                                                こんにちは。Finatextでエンジニアをしている @s_tajima です。 新型コロナウイルス感染症の影響により、近年徐々に広まりつつあったリモートワークやテレワークといった働き方やその設備に対する企業の温度感が、「あったらいいね」から「無いとだめ」に急速に変わりつつあるのを感じます。 弊社も先日の緊急事態宣言を受け、 全社的に原則在宅勤務という体制 に移行しました。 そこで今回は、Finatextのリモートワーク(在宅勤務)を支えるVPNのシステムについてご紹介したいと思います。 FinatextのVPNシステムは以下のように運用しています。 月に2万円程度のコストPritunlというオープンソースのソフトウェアを使用AWS上にスケーラブルな形で構築エンジニア・非エンジニア含めて80人ほどの社員が利用今使っているVPNに何かしらの不満がある方、突然VPNの環境が必要になりどのように構

                                                                                  リモートワーク社員80人分のVPN環境を低コストかつスケーラブルに提供する方法
                                                                                • 冴えないAWS環境の育てかた α | DevelopersIO

                                                                                  中山です ソリューションアーキテクトとして、AWS環境の利活用をお手伝いするお仕事をしています。 まれによく見るAWS環境 とりあえずこれを見てほしい。 これが絶対にだめと言いたいわけではないです。 一時的な検証環境だったり、とにかくスピード重視でサービスをデリバリーさせる必要があったり、サービスの提供者側が何ら責任を負わない・障害時のビジネスインパクトが無い(そんな状況あるのか?)という前提があったり、状況次第ではこれで十分な時もあると思います。 しかし、一般的な業務システムやサービスの場合にはいろんな意味で不十分でしょう。 では、このような環境をどのように育てていくとよいでしょうか。 この記事では、そんな育てかたの一例を紹介していきたいと思います。 なお、本記事はくっそ長いです。 ちなみに、最終的にはこうなります。 文字が小さすぎて読めない! ちょっとそこのハ○キルーペ貸してくれーw

                                                                                    冴えないAWS環境の育てかた α | DevelopersIO