コンテンツ・デリバリ・ネットワークの略で、ウェブコンテンツの配信を最適化するネットワークの仕組み。複数のウェブサーバーを分散配置し、目的のウェブサイトを場合により一時保存、利用する各ユーザーを適切に振り分けることで、利用者にとってはコンテンツの高速化および安定化、運営者にとってはサーバーの負荷の分散をもたらす。
動画などのメディア配信、また非常に多数の訪問者を抱えているなど、大規模、大容量のアクセスがあるサイトで採用される。
こんにちは! アソビュー開発チームの山内です! 先日、自転車でしまなみ海道を渡ってきました。 途中、ゲリラ豪雨に遭いながらもなんとか75km完走しました。ゴール後の温泉は最高ですね。 次は、晴れた日に渡って温泉に入ろうと思います。 はじめに アソビュー!では、2022年のゴールデンウィークの4/29 ~ 5/8の間に約2,300万のPVがありましたが、システムダウンすることなく、多くのゲストにワクワクを届けることができました。 今回は、私達がゴールデンウィークに向けて準備した背景と、アプリケーションでの負荷対策を紹介します。 背景 アソビュー!は、全国の遊びやレジャーチケットを予約・購入して体…
はじめに パフォーマンスや負荷対策としてキャッシュを用いるという手法はよくあり、AWS CloudFrontもそれを提供するサービスの一つです。 しかしながら利用する上でいくつか注意点があるため、今回は3点ほど書いていこうと思います。 1-1. 静的コンテンツ用のエイリアスをCloudFrontで発行する 動的コンテンツをキャッシュしてしまうとマズイために動的コンテンツはCloudFrontを通さないようにする場合は静的コンテンツのみそれ用のエイリアスをCloudFrontで発行します。 サイトのFQDNはexample.co.jpだけど、画像などの静的コンテンツについてはsubexample…
LaTexで数式を表示させるのに30分くらい引っかかってしまったが、 デザイン設定でMathJaxのCDNのリンクURLを読み込む 編集をMarkdownモードに切り替える 数式を書く の順番でやっていけば良いことがわかった。 デザイン設定でMathJaxのCDNのリンクURLを読み込む方法 MathJaxのCDNリンクは <script> MathJax = { tex: {inlineMath: [['$', '$'], ['\\(', '\\)']]} }; </script> <script id="MathJax-script" async src="https://cdn.jsde…
CDNって何ですか? CDN とは 有名なCDN CDNを使うとどんな良いことがある? CDNの仕組み 1.クライアント 2.エッジサーバ 3.オリジンサーバ 通常のウェブアクセスの場合 CDNを利用したアクセスの場合、 CDNを利用するときのDNSの話 CDNの料金 CDNのメリットを活かすために 1. キャッシュヒット率を上げる 2. キャッシュクリアは少なめに 3. コンテンツの容量は控えめに CDNのデメリット まとめ CDNって何ですか? こんにちは、ラクスのインフラを担当している akiponx です。 今回はCDNについて書いてみようと思います。 みなさん、CDNって知ってますか…
こんにちは! 最近、釣りにハマりだした虎の穴ラボのS.Sです。 この前は、サビキ釣りで、たくさんのイワシと小サバを釣ってきました。 昨今、スマホの普及や回線速度の高速化で、高解像度の画像や動画などを数多くのコンテンツをサイトに掲載する機会が増えてきました。 その中で、安定かつ高速にコンテンツを配信するためにキャッシュやCDN(Content Delivery Network)などコンテンツ配信に関する技術が解説された本を購読しましたので、今回はこちらをご紹介します。
先日、ショボい共用レンタルサーバーのサイトで、CDNをjsDelivrに変えてみると劇的とは言いませんが、多少は効果を感じることができました。 そうなると調子に乗ってしまいますね!同程度にショボいサーバーをLighthouseで覗いてみました。 Bootstrapたちの元々のCDN やはり気になるPerformanceです。これを100点とかそれに近付けようとすると、かなりの気合が必要になります。幸せを取り戻すためには、気付かなかったことにする作戦も浮上してきます。 でも、今の私にはCDN変更という必殺技があります。労なく数ポイントは獲得できるはずです。今回も変更するのは、Bootstrap、…
BootstrapやjQueryたちをCDN経由で引っ張ることも多いですよね。このCDNを変えたらちょっとだけ速くなった気がします。 stackpath.bootstrapcdn.comやcode.jquery.comから 上の図は、かなりショボい共用サーバーをlighthouseで見た模様です。画像なんかも無駄に大きくせず、かつ、webpを使うなどすぐできる軽量化は施し済みです。 そして、ふと、そういえばBootstrap 5はCDNが変わっているのを思い出しました。そう、stackpath.bootstrapcdn…ではなくjsDelivrに。 で、初めてjsDelivrが気になって調べた…
最近、CDNと流量制御を一気に実装して高トラフィック要件からシステムを守る、という対応をしたので書く。 結論は以下。 CDNやブラウザキャシュを活用し、可能な限り静的コンテンツはキャッシュさせてオリジンへの負荷を低減すべし 野次馬ユーザや予測できないイベントによるバーストトラフィックがあるため、流量制御の機構をいれるべし システムのボトルネックに合わせた重点監視ポイント、特に各PVにおけるトラフィック量の監視が流量制御運用には必要
CDNについてまとめよう CDNとは? CDNの具体的な中身 CDNを利用するメリット HTMLとかの外部ライブラリ読み込みに使うCDN 最後に CDNについてまとめよう よくWeb関連の…ライブラリ、でいいのでしょうか? それの導入手段として用意されているCDNというものについてですが…。 筆者自身、CDNで何ができるかが分かってても、それ自体がどういうものかあまり分からない状態だったので…。 改めて詳しく調べてみました。 参考にさせていただいた記事は下記の通りです。 第1回 CDN の 仕組み (CDNはどんな技術で何が出来るのか) | REDBOX Labo CDN とは?| Akama…
新聞やテレビのニュースでもしばしば取り上げられていますが、今年5月以降、サル痘の症例が世界各地で報告されています。今後、流行がどうなっていくのか、6月23日には世界保健機関(WHO)が、「国際的に懸念される公衆衛生上の緊急事態」に当たるのかどうかを検討するため、緊急専門委員会を開催しました。委員会報告を受け、WHOは現状について、緊急事態の宣言には至らないが、今後も感染拡大の推移を注視していく必要があるとの判断をしているようです。 そもそも、サル痘ってなに?という疑問もあるので、TOP-HAT News 166号(2022年6月)でも、情報を集めてみました。 とくにHIV/エイズ対策の関連では…
今生まれて初めてVue.jsを触ってるんですけど。 Vue.jsってVue-CLIってのとCDNタイプのがあるんかい!とか、Vue2.xとかVue3.Xとかで書き方が違うんかい!とか色々試行錯誤しております。 まぁこれで気づいたことは全て終わったあとにZennかQiitaで上げようと思います。 で、今回はVue.jsの切り替えアニメーションの「transition」の速度についての気づき。 結論:フォーム切り替えはenterは0.1s、leaveは0.01sが丁度いい ということです・・・ サンプルコードとかで試行錯誤していると「5s」とかで設定してるところが多いんですけど、多分これって普通の…
この記事は #Rettyマイクロサービス強化月間 の第5弾の記事です。 engineer.retty.me 前回は鈴木さんの「予約 API のマイクロサービス化と gRPC ゲートウェイの置き方」でした。 インフラチームの幸田です。 自分の番はまだまだ先だと思っていたら、もう月末で焦って記事を執筆しています。 今回の記事ではマイクロサービス基盤を新しく Terraform で構築し直した話をしようと思います。 マイクロサービス化のはじまり システム構成 抱えていた問題 マイクロサービス間での設定差異や変更漏れの発生 新規サービスの追加に時間がかかる 作業に対するレビューができない 課題解決に向…
oakでルート用のミドルウェアに対するテストを行おうとした時に躓いたので、そのための忘備録。 標準のモッキングライブラリ Oakではモック用のユーティリティ関数が用意されている。 https://deno.land/x/oak@v7.7.0/docs/testing.md 通常のミドルウェアに対するユニットテストでは、testing名前空間で用意されている関数で問題ない。 しかし、ルート用のミドルウェアをテストしたい時、内部でリクエストボディを参照したい場合にtesting.createMockContextでは、request.bodyを設定することができない。 なので意図したテストをするこ…
いつも読んで頂きありがとうございます。 私の会社の工場で外部機関によるJISの審査がありました。 JISとは 3年に1回の審査 最後に JISとは 皆さんはJISというのを知っていますか。 JISとは日本産業規格(japanrse Industrial Standardsの略)で日本の産業製品に関す る規格や測定法などが定められた国家規格です。 例としてトイレットペーパーのサイズは日本のJIS規格で標準化されており、114mmと 決められています。真ん中の空洞は直径38mmが主流でロールされた直径は120mm以下 と定められているのでどこのメーカーの商品を使ってもホルダーに取り付けられます。 …
こんにちは ぼら です <m(__)m>今回は現代の 【たまった写真ど~すんだヨ!】 大問題を考えますデジカメ(もはや平成レトロか?)あたりから 「写真をプリントアウトしてアルバムに」という文化もセピア色のかなたに・・・・インクジェットプリンターが普及し手軽に家庭で印刷もできるようにでも時が経つと思い出とともに色もあせて・・・スマホ到来でもう整理整頓どころの量じゃない写真がクラウドのかなたに・・・見返すことありますか?そこで今回 テレビCMでもおなじみの 【しまうまプリント】 をご紹介します!まずは 無料で申し込めるサンプルフォトブック を取り寄せてみました! www.youtube.com …
はじめに こんにちは。株式会社Flatt Security セキュリティエンジニアの石川です。 本稿では、ログイン機能をもつWebアプリケーションにおける実装上の注意を、マイページ機能から派生する機能のセキュリティ観点から記載していきます。特に、XSS(Cross-Site Scripting)やSQLインジェクションのような典型的な脆弱性と比較して語られることの少ない「仕様の脆弱性」にフォーカスしていきます。 これから述べる実装上の注意点は、実際にはマイページ機能であるかどうかに関係なく注意するべきです。 しかし、開発者の視点に立つと「これこれの機能にはどのようなセキュリティ観点があるか」と…
CDNを使ってキャッシュを活用したいなと思い、 いろいろ調べたときの備忘録。 調べたのは、Cloudflare/Cloud CDN/Fastlyの3種類。 まとめ Cloudflare 無料でも利用できる 単一URLのパージのみ 柔軟なパージはEnterpriseプランのみ Cloud CDN 価格が安く、前方一致でのパージも可能 キャッシュ削除が遅く、1分につき1回まで $0.09/GB、$0.0075/1万req Fastly 柔軟なパージができ、キャッシュ削除もはやい 最低月額料金$50が必要 $0.19/GB、$0.0090/1万req(アジア) 費用がかかるほど柔軟なパージができるけ…
システムデザインについて勉強しました。 まだほぼ概要が理解できていない状態なので、厳密な説明や定義より平易な表現を選んでいる(というかそれしかできない)ものの、なにかマズそうな嘘が書いてあったら教えていただけると助かります。 現状 CSなし、崖っぷち応用情報技術者。 システム設計の学習・経験無し。 system-design-primerをパッと見た感じあんまりよくわからなかった。 目標 とりあえず大まかな用語について意味を自分なりに噛み砕いて理解する。 学習する内容の全容をざっくり把握する。 これからどんな内容を掘り下げる必要があるのかなんとなく把握する。 使用した教材 github.com…
今回は電子署名ソリューションを提供するドキュサイン($DOCU)の2023年度Q1決算を翻訳致しました。(DeepLで基本的な翻訳を行っております。) 細かな部分については端折っておりますので、投資等を検討される際はしっかりとドキュサインのIRをご確認ください。 投資は自己責任でお願い致します。 参考:https://investor.docusign.com/investors/press-releases/press-release-details/2022/DocuSign-Announces-First-Quarter-Fiscal-2023-Financial-Results/def…
ブラウザでQRコードを読み取る ブラウザからカメラを起動してQRコードを読み込めるようにするJavaScriptライブラリjsQRを使用しQRコードを読み込む。 https://github.com/cozmo/jsQR 参照:1分でできるjsQRによるブラウザのQRコード読み込みアクセス ソース サンプル <!DOCTYPE html> <html lang="ja"> <head> <meta charset="UTF-8"> <meta name="robots" content="none"> <meta name="viewport" content="width=device-wi…
eコマースウェブサイトを運営している場合、Googleで競合他社より上位にランク付けすることが、売り上げを伸ばすための鍵であることをご存知でしょう。 ただし、非常に便利な検索エンジン最適化の秘訣がない場合は、競合他社よりも上位にランクインする可能性は低くなります。 そして、それらの検索エンジン最適化の秘訣の1つは、ユーザーの行動が向かう方向を常に把握していることです。 2014年、comScoreのレポートによると、モバイルトラフィックがデスクトップからのトラフィックを上回っています。 2015年、Googleは、モバイル検索がデスクトップに勝利したことを公式に宣言しました。 ただし、トラフィ…
■前回 Herokuへの反映にちょっと手こずったが、手順は確立できてきたかな。というところ。 ■画面遷移にrouteを使う 細かい修正だが、画面遷移やPOSTする場合の記述がまちまちだった。 書きがち href="/detail?thread_id={{$thread->thread_id}}&reply_id=0" 下記のように記述するよう心掛ける。 ----- href="{{ route('detail.index', ['thread_id' => $thread->thread_id, 'reply_id' => $reply->reply_id]) }}" ----- ■削除時の確…