並び順

ブックマーク数

期間指定

  • から
  • まで

241 - 280 件 / 3477件

新着順 人気順

Handlerの検索結果241 - 280 件 / 3477件

  • Qwikというフレームワークについて - console.lealog();

    GitHub - BuilderIO/qwik: An Open-Source framework designed for best possible time to interactive, by focusing on resumability of server-side-rendering of HTML, and fine-grained lazy-loading of code. 去年から気になってて、調べたいなーと思ってたやつ。 昨今の覇権を握ってる系のJavaScript-firstなフレームワークたちとは違い、HTML-firstを謳うユニークなアプローチをしてるのが一番の特徴。 中の人による一連のシリーズもあって、そこも読んでまとめてみた記事です。 Qwik Series' Articles - DEV Community Qwikの特徴 遅いモバイル環境だとしても、

      Qwikというフレームワークについて - console.lealog();
    • goのLambdaはコンテナイメージでよくない? - エムスリーテックブログ

      【Unit4 ブログリレー8日目】 こんにちは、エムスリーエンジニアリンググループの福林 (@fukubaya) です。 今日の記事は、タイトルのとおりgoのLambdaはコンテナイメージで管理するのがオススメって話です。 城島高原パーク(きじまこうげんパーク)は、大分県別府市の城島高原にある遊園地。本文には関係ありません。 go1.xランタイムのサポート終了 コンテナイメージにする利点 起動時間は遅くならないの? 構成 処理本体 main.go Dockerfile 本番実行用イメージ ローカル実行用イメージ ローカルで実行 Lambdaの設定 まとめ We are hiring! go1.xランタイムのサポート終了 先日、AWS Lambdaの go1.x ランタイムのサポート2023/12/31で終了することが話題になっていました。 「なっていました」と伝聞なのは、Unit4ではすで

        goのLambdaはコンテナイメージでよくない? - エムスリーテックブログ
      • キャッシュ制御の観点で見る CloudFront - NRIネットコムBlog

        本記事は AWSアワード記念!夏のアドベントカレンダー 7日目の記事です。 🎆🏆 6日目 ▶▶ 本記事 ▶▶ 8日目 🏆🎆 すっかり夏ですね、単純に嫌です。 日が落ちないと外に出るのも厳しい暑さですが皆様いかがお過ごしでしょうか。 西です。 今年は無事 2024 Japan AWS All Certifications Engineer に残れましたので AWSアワード記念!夏のアドベントカレンダー 7 番手です。 はたしていつまで All Certifications Engineer に残り続けられるのでしょうか。 さて、本題です。 今回も例によって Amazon CloudFront (CloudFront) についての記事です。 CloudFront はリクエストのあった Web コンテンツをキャッシュすることが主な役割です。 しかし、コンテンツにはキャッシュして良いものと

          キャッシュ制御の観点で見る CloudFront - NRIネットコムBlog
        • WebKit Features in Safari 16.4

          Mar 27, 2023 by Patrick Angle, Marcos Caceres, Razvan Caliman, Jon Davis, Brady Eidson, Timothy Hatcher, Ryosuke Niwa, and Jen Simmons ContentsWeb Push on iOS and iPadOSImprovements for Web AppsWeb ComponentsCSSHTMLJavaScript and WebAssemblyWeb APIImages, Video, and AudioWKWebViewDeveloper ToolingWeb InspectorSafari Web ExtensionsSafari Content BlockersNew Restrictions in Lockdown ModeMore Improve

            WebKit Features in Safari 16.4
          • GraphQLのN+1問題を解決する DataLoaderの使い方 - 一休.com Developers Blog

            こんにちは。宿泊事業本部の宇都宮です。この記事では、GraphQLサーバ実装時に遭遇するN+1問題と、その解決のために使えるライブラリを紹介します。 フィールド単位でresolverを用意する N+1問題 GoのDataLoaderライブラリ DataLoaderの仕組み DataLoaderのサンプルコード DataLoaderとDataDog APM むすび 採用情報 フィールド単位でresolverを用意する GraphQLでは、クライアントのクエリに応じてオンデマンドに結果を取得できます。 たとえば、以下のクエリを投げると… { accommodation(accommodationId: "00001050") { name } } 以下のようなレスポンスが取得できます。 { "data": { "accommodation": { "name": "マンダリン オリエンタル 東

              GraphQLのN+1問題を解決する DataLoaderの使い方 - 一休.com Developers Blog
            • AWS LambdaとNuxt.jsでServer Side Renderingする(2020年版) - Sweet Escape

              サーバーレスでサーバーサイドレンダリング(SSR)の後編です。前編はこちら。 www.keisuke69.net なお、同内容をこちらのイベントでも話す予定ですので興味あるかたはぜひこちらも。 serverless-newworld.connpass.com はじめに サンプルアプリ serverless.yaml 最後に はじめに 前回、SSRとはって話を簡単にしました。今回はSSRをAWSのサーバーレス、つまりAWS Lambdaでやってみたいと思います。 今回はVue.jsのフレームワークであるNuxt.jsで作ったサンプルアプリのSSRをLambdaで試してみます。 前回のブログでNuxt.jsでの例という説明をしましたが、今回はそこを実際にやっていく感じです。 なお、Nuxt.jsをLambdaで動かす場合の話って実はググってもあまり出てきません。いくつかの記事が出てくるだけです

                AWS LambdaとNuxt.jsでServer Side Renderingする(2020年版) - Sweet Escape
              • とほほのLISP入門 - とほほのWWW入門

                LISPとは インストール Hello world REPL (Read-Eval-Print Loop) スクリプト実行 FASLファイル 実行ファイル コメント S式 Lispで扱える型 出力 文字列出力(write, write-line) 文字列・数字出力(print, princ, prin1) 改行出力(terpri) フォーマット(format) アトム(atom) 数値(number) 整数(integer) 小数(float) 分数(ratio) 複素数(complex) 文字列(string) 文字(character) シンボル(symbol) 真偽値(t/nil) リスト(list) リスト(list) 空リスト(()/nil) 要素抽出(car, cdr, first, second, ..., rest) リストの長さ(length) リスト連結(append)

                • S3 + API gateway + Lambda (+ Aurora) による Serverless 申請フォームの構築 - BASEプロダクトチームブログ

                  はじめに はじめまして、CSE (Corporate Solution Engineering1)の上野です。 今回は BASE Partners という事業で使用していた Google フォームを S3 + API gateway + Lambda (+ Aurora) を使用した Serverless 構成のフォームに移行するというプロジェクトについてお話します。 変更前の構成図と構築した構成図としては以下のようになります。 変更前 変更後 BASE Partners について BASE では新規のショップオーナー様を紹介・支援いただくオフィシャルパートナーを募集するパートナープログラムを運営しています。 それらの申請には初期的には Move fast に行うため、Google フォームと Google スプレッドシートが使用されていましたが、ありがたいことにパートナー様やご紹介いただ

                    S3 + API gateway + Lambda (+ Aurora) による Serverless 申請フォームの構築 - BASEプロダクトチームブログ
                  • AWSで使うRust

                    κeenです。この記事では IdeinでのAWSの利用例の開示の一環として、どのようにRustをAWS上で動かしているかをご紹介します。 Ideinの提供しているサービスActcastではサーバの主たる部分をRustで書いています。 はじめの頃は本当にRustだけだったのですが、各方面に秀でたメンバーが集まった結果、今ではHaskellやTypeScript、一部ですがGoも動いています。 そもそもRustの採用事例が少ないことからRustをAWSで扱う知見はそこまで多くなさそうです。 そこで今回はIdeinでどのようにAWS上でRustを動かしているか、動かすにあたって必要だった知見などを紹介していきます。 全体像全体の中で、Rustが動いている環境はECSとLambdaです。 ECSで動いているのはActcastのバックエンドAPIで、Actcastのサーバ本体とも言える部分です。 L

                      AWSで使うRust
                    • Lambda + DynamoDB + LangChainで外部情報に対応したサーバレスチャットボットを作ってみる - NRIネットコムBlog

                      Lambda + DynamoDB + LangChainを組み合わせて外部情報に対応したチャットボットを作ってみました。 構成 Lambda Dockerfile requirements.txt lambda_function.py OpenAI Functions Agent 会話履歴の保持 外部情報の参照 DynamoDB 動作確認 まとめ 構成 Lambda LangChainのパッケージが250MBを超えてしまうので、コンテナイメージからLambda関数を作成するようにします。 docs.aws.amazon.com Dockerfile FROM public.ecr.aws/lambda/python:3.10 # Copy requirements.txt COPY requirements.txt ${LAMBDA_TASK_ROOT} # Copy function

                        Lambda + DynamoDB + LangChainで外部情報に対応したサーバレスチャットボットを作ってみる - NRIネットコムBlog
                      • MySQLでredis storage engineを作った - tom__bo’s Blog

                        MySQLのストレージエンジンはplugableになっていて、APIを実装すれば自作のストレージエンジンを組み込むことができる。 ということで、試しにRedisをストレージエンジンとして使うRedis Storage Engineを作りました。 github.com 途中で飽きてしまった ちまちま実装するよりC++の勉強とInnoDB読んだほうが良さそうと思ったので、お蔵入りするつもりでしたが、Yahoo! Japanでストレージエンジンを研究開発しているという話で個人的に盛り上がったので、改めて作ったところまでを見直して、整理しておこうという趣旨です。 実装したものはCREATE TABLEとDMLがある程度カバーされたおもちゃですが、自作ストレージエンジン開発のためのドキュメントはなくなっていく一方なので(MySQL internal documentを含む既存のドキュメント・ブログ・

                          MySQLでredis storage engineを作った - tom__bo’s Blog
                        • [Go] レイヤードアーキテクチャの階層構造を守らないimportを警告するlinterを作った - My External Storage

                          Goでクリーンアーキテクチャ等のレイヤードアーキテクチャを実装するための静的解析ツールを作った。 「webhandlerパッケージからusecaseパッケージを使わずに直接domainパッケージを使わないで!」というような、やってほしくないimportをエラーにできる。 https://github.com/budougumi0617/layer TL;DR クリーンアーキテクチャなどのレイヤードアーキテクチャでは、利用できるパッケージに制限がある レイヤー間の依存関係は一方向のみ 同じ層、あるいは1つ下の層のパッケージしか利用してはいけない https://blog.cleancoder.com/uncle-bob/2012/08/13/the-clean-architecture.html Goは循環importができないので、自然に単方向依存は満たしやすい しかし、層を飛び越して、2

                            [Go] レイヤードアーキテクチャの階層構造を守らないimportを警告するlinterを作った - My External Storage
                          • Amazon Elasticsearch ServiceによるECSアプリケーションのログ解析基盤の構築 - BASEプロダクトチームブログ

                            こんにちは、BASE BANK 株式会社 Dev Division でエンジニアとしてインターンをしている前川です。 今回、Amazon Elasticsearch Service(以下、Amazon ES)による、ECS/Fargate で稼働するアプリケーションのログデータの解析基盤を新規で構築することになったので、構築するにあたって調査した内容や関連する内容、実際におこなった構築方法についていくつか紹介します。 今回の構築の簡単な全体構成図は次のようになります。 今回は、 ECS/Fargate のログを S3 にルーティングする Amazon ES にログをルーティングする VPC アクセスの Amazon ES を構築し、Kibana を外部からアクセスできるようにする の3つの手順にわけて、構築方法や関連する内容について紹介していきたいと思います。 なお、この記事で取り扱ってい

                              Amazon Elasticsearch ServiceによるECSアプリケーションのログ解析基盤の構築 - BASEプロダクトチームブログ
                            • 実例で学ぶ MySQL/MariaDB デバッグ - nayuta-yanagisawa's blog

                              この記事では、MySQL/MariaDB のバグを修正するための典型的な手順を、具体例を通して解説する。次の MariaDB のバグを例として取り上げるが、基本的なデバッグの手順は MySQL でもまったく同様である。 MDEV-24868: Server crashes in optimize_schema_tables_memory_usage after select from information_schema.innodb_sys_columns なお、MySQL/MariaDB のデバッグ方法についての包括的な解説を与えるのは、この記事のスコープ外である。デバッグ手法の詳細を知りたい場合は、以下の一連の記事を参照してほしい。 Debugging MySQL/MariaDB (1): Build and Test Debugging MySQL/MariaDB (2): DBU

                                実例で学ぶ MySQL/MariaDB デバッグ - nayuta-yanagisawa's blog
                              • サーバーレスやられアプリを使った脆弱性診断ハンズオン - Qiita

                                セキュリティ診断のハンズオンなどの目的で、敢えて脆弱性を残しているいわゆる”やられアプリ”。 元旦から何やってんだという感じはありますが、折角時間があるので兼ねてから攻略したかった OWASP Serverless Goat をやっつけていきます。 OWASP Serverless Goat とは OWASP Serverless Goat はイスラエルのセキュリティスタートアップ PureSec が作成した The Ten Most Critical Risks for Serverless Applications v1.0 に基づいた、サーバーレスアプリケーション固有の脆弱性をわざと埋め込んだ Web アプリケーションです。 以下の教育目的で作成されたものであり、それ以外の目的で利用することは望ましくありません。 開発者とセキュリティ担当者に一般的なサーバーレスアプリケーションレイヤ

                                  サーバーレスやられアプリを使った脆弱性診断ハンズオン - Qiita
                                • サイトの HTTP3 化と DNS HTTPS RR および Alt-Svc Header によるアドバタイズ | blog.jxck.io

                                  Intro 本サイトを HTTP3 対応し、Alt-Svc ヘッダおよび DNS HTTPS Resource Record によってそれをアドバタイズする構成を適用した。 色々ハマったので作業のログを記す。 HTTP3 on h2o Fastly の数々の発表からも h2o が HTTP3 に対応していることは自明だが、その設定方法がドキュメントに記載されておらず、なかなか設定方法がわからずにいた。先日、たまたま当該 issue の中で、設定ファイルサンプルの中にコメントアウトされたフラグがあることを教えてもらい、これをたよりに HTTP3 化を進めることができた。 したがって、ここから記す内容はドキュメントやリリースノートの内容ではないため、将来的に全然違う方法になるかもしれない点には注意が必要だ。なお、最近はリリース自体がないため master をビルドしてデプロイしている。 h2o

                                    サイトの HTTP3 化と DNS HTTPS RR および Alt-Svc Header によるアドバタイズ | blog.jxck.io
                                  • 「ビジネスロジックの処理は2つに分類すると整理しやすい」 4つの例から考える、プレゼンテーション層・データアクセス層の見分け方

                                    今回はアプリケーションアーキテクチャを学ぶ最初の一歩として、「MVC」や「3 層アーキテクチャ」などの基本的な用語の意味や関係性を整理する「改めて整理するアプリケーション設計の基本」。ここで大嶋氏が登壇。さらに、ビジネスロジック層の役割について深掘りします。前回はこちらから。 リクエストの形式チェックはビジネスロジック層の役割か? 大嶋勇樹氏:(スライドを示して)続けて「これはビジネスロジック?」(というもの)をもう少し見ていこうと思います。2つ目として、リクエストの形式チェックがあります。 例えば、リクエストの必須パラメーターが足りているかとか、データサイズは決められた範囲内かとか、そういうチェックがあると思いますが、個人的にこれはプレゼンテーション層でチェックすべきものだと思っています。 なぜかというと、リクエストは利用者とのインターフェイス、利用者との境界での約束事に対するチェックな

                                      「ビジネスロジックの処理は2つに分類すると整理しやすい」 4つの例から考える、プレゼンテーション層・データアクセス層の見分け方
                                    • SoundCloudみたいなサービスを個人で開発した

                                      サービス概要 タイトル通り、現状はSoundCloudみたいに自分の作った曲を投稿できるサービスです。 現在実装されている機能は以下の通りです。 楽曲投稿 アルバム ランキング メッセージ(DM) フォローとフィード(タイムライン) いいねとブックマーク タグ・キーワードによる検索 このようにとりあえずSoundCloudのような楽曲投稿サービスとしての機能は最低限備えていますが、ゆくゆくはミュージシャンの活動拠点になることを目指しています。というのは、例えばYouTubeへの投稿や各種サブスク配信へのリンク、またライブなどイベントへの参加日程など、活動の実績/予定などがすべて1ページでわかるようにしたいと思っています。 また、ミュージシャン同士の交流/発見の場にしていきたいです。バンドメンバーや演奏を依頼する相手を見つけるのに適した場所はあまりありません(いわゆるメン募サイトは機能不全だ

                                        SoundCloudみたいなサービスを個人で開発した
                                      • 新しいサーバーレス LAMP スタック – Part 1: 概要紹介 | Amazon Web Services

                                        Amazon Web Services ブログ 新しいサーバーレス LAMP スタック – Part 1: 概要紹介 本投稿は AWS サーバーレス アプリケーションのシニアデベロッパーアドボケートである Benjamin Smith による寄稿です。 本シリーズの他のパートは以下のリンクからアクセスできます。また、関連するサンプルコードはこちらの GitHub リポジトリにあります。 パート2:リレーショナルデータベース パート3:Webサーバーの置き換え パート4:サーバーレス Laravel アプリの構築 パート5:CDK コンストラクトライブラリ パート6:MVC からサーバーレスマイクロサービスへ これは、PHP 開発者向けの投稿シリーズの第一弾です。このシリーズでは、PHP でサーバーレステクノロジーを使用する方法を説明します。サーバーレスアプリケーションを構築するために利用で

                                          新しいサーバーレス LAMP スタック – Part 1: 概要紹介 | Amazon Web Services
                                        • サーバーレスでURL短縮サービスを40分で作ってリリースした話 - Qiita

                                          この記事は コネヒト Advent Calendar 2019 2日目 の記事です。 はじめに 社内のSlackでURL短縮サービスが自社にあればよいなー、という呟きがあったので、昼休みに一人ハッカソンをしてみた時の話です。(※実運用はしていないです) 概要 https://s.hyiromori.com/ にアクセスするとURL短縮用の画面が表示されて https://s.hyiromori.com/[5文字の乱数] のようなURLを発行できるようなWebアプリを作りました。 ドメインが短くないと、あまり短縮された感じがないですが、まだ実験段階なのでご勘弁ください。 ソースは GitHub にあります。 技術スタック 使い慣れている serverless フレームワークを使って、作ってみました。 使用しているAWSのサービスは以下のようになります。 API Gateway Lambda

                                            サーバーレスでURL短縮サービスを40分で作ってリリースした話 - Qiita
                                          • [新機能] AWS Lambda Function URLで簡単にLambda関数を実行する - NRIネットコムBlog

                                            こんにちは、上野です。 Lambda関数をワンクリックでURL公開できる機能が出ました! aws.amazon.com 今までのLambda Lambda関数を(AWS認証無しの)HTTPS経由で実行するには、Lambdaの前段にAmazon API Gatewayを設置する必要がありました。 API Gatewayは便利で高機能なのですが、設定項目も多く、初めて触る方には難しい部分もあるかと思います。 今回の機能で、Lambdaのメニューから機能をONにするだけHTTPS公開できるようになりました。 やってみる Lambdaの作成画面に、「関数URLを有効化」のメニューが追加されているので、これをONにします。 初期状態では認証が必要なAWS_IAMが選択されていますが、今回はまずどれだけ簡単に公開できるかを試すため、NONEを選択します。 ※画面のとおり、URLを使用して全世界からLa

                                              [新機能] AWS Lambda Function URLで簡単にLambda関数を実行する - NRIネットコムBlog
                                            • なるほどTCPソケット

                                              TCP Ruby Jesse Storimer 2024-09-23 i ii API iii Web HTTP API REST JSON API API TCP API Twitter API API TCP JSON XML API 2 API C API iv Web Unix Unix Ruby Ruby Ruby Ruby 1.9 3 1 2 Hello, World v 3 API API API 1983 BSD 4.2 TCP API API API API API 1983 API API 1 API API 2 API API C C API Ruby API vi Ruby API 1 API UDP TCP API API TCP HTTP FTP TCP/IP Vol.1 *1 *1 http://www.amazon.co.jp/dp/4894713209/

                                              • Chrome への HTTP/3 と IETF QUIC の導入について

                                                .app 1 .dev 1 #11WeeksOfAndroid 13 #11WeeksOfAndroid Android TV 1 #Android11 3 #DevFest16 1 #DevFest17 1 #DevFest18 1 #DevFest19 1 #DevFest20 1 #DevFest21 1 #DevFest22 1 #DevFest23 1 #hack4jp 3 11 weeks of Android 2 A MESSAGE FROM OUR CEO 1 A/B Testing 1 A4A 4 Accelerator 6 Accessibility 1 accuracy 1 Actions on Google 16 Activation Atlas 1 address validation API 1 Addy Osmani 1 ADK 2 AdMob 32 Ads

                                                  Chrome への HTTP/3 と IETF QUIC の導入について
                                                • Services By Lifecycle - Wide Awake Developers

                                                  This post took a lot longer to pull together than I expected. Not because it was hard to write, but because it was too easy to write too much. Like a pre-bonsai tree, it would grow out of control and get pruned back over and over. In the meantime, I delivered a workshop and spent some lovely holiday time with my family. But it’s a new year now, and January is devoid of holidays so it’s high time I

                                                  • 爆速?!コンテナイメージからデプロイしたLambdaのコールドスタートについて検証してみた #reinvent | DevelopersIO

                                                    CX事業本部@大阪の岩田です。 この記事はAWS LambdaとServerless Advent Calendar 2020の6日目 です。 先日のブログでご紹介したように、Lambdaのパッケージフォーマットとしてコンテナイメージがサポートされるようになりました。 従来のZIP形式と比較したメリットの1つとして、イメージサイズの上限が10Gまで許容されるという点があります。ZIP形式の上限はレイヤーと関数コードを合わせて250Mであり、サイズの大きなライブラリや機械学習モデルを利用する場合、この上限に抵触することもあったのではないでしょうか?パッケージフォーマットとしてコンテナイメージを選択することで、こういったユースケースにも対応できるようになりました。 ここで1つ疑問が浮かびます。イメージサイズの上限が10GBとのことですが、10GBの巨大イメージからLambdaがコールドスタート

                                                      爆速?!コンテナイメージからデプロイしたLambdaのコールドスタートについて検証してみた #reinvent | DevelopersIO
                                                    • AWS Lambda でのカスタムチェックポイントによるバッチ処理の最適化 | Amazon Web Services

                                                      Amazon Web Services ブログ AWS Lambda でのカスタムチェックポイントによるバッチ処理の最適化 AWS Lambdaは、Amazon Kinesis Data StreamsやAmazon DynamoDB Streamsなどのソースから取得した複数メッセージをバッチ処理できます。通常の操作では、処理を行う関数は1つのバッチから次のバッチに移動して、ストリームからのメッセージを消費します。 ただし、バッチ内のアイテムの1つでエラーが発生すると、そのバッチ内の同じメッセージ群の一部が再処理される可能性があります。新しいカスタムチェックポイント機能により、失敗したメッセージを含むバッチの処理方法をより詳細に制御できるようになりました。 このブログ記事では、バッチ失敗時のデフォルトの動作と、このエラー状態に対処するために開発者が使用可能なオプションについて説明します。

                                                        AWS Lambda でのカスタムチェックポイントによるバッチ処理の最適化 | Amazon Web Services
                                                      • WasmLinux: LinuxカーネルをWebAssemblyにする

                                                        LinuxカーネルがWebブラウザで動いたらどう考えても面白い んだけど、そこに至るまではなかなか難しい道のりになる。その第一歩として、Linuxカーネルのユーザーランド版であるLKL( https://github.com/lkl/linux )をWebAssemblyにコンパイルして、wasm2cでC言語に変換した上、Visual Studio 2022でコンパイルしてWindows上で実行してみた。 まだWebブラウザでは動いていないが、思ったよりは簡単にWasmに移植できた(個人の感想です) ウケが良ければMUSL libc移植編 → デバイスドライバ活用編 → Webブラウザ上動作編と続ける感じで。。 EDIT: Visual Studioのスクリーンショットを撮りなおし。 memory-control はanonymousなmapしか救えないので、ここ数年スパンではエミュレーシ

                                                          WasmLinux: LinuxカーネルをWebAssemblyにする
                                                        • Spectre の影響を受けないウェブを作るための概念実証について

                                                          .app 1 .dev 1 #11WeeksOfAndroid 13 #11WeeksOfAndroid Android TV 1 #Android11 3 #DevFest16 1 #DevFest17 1 #DevFest18 1 #DevFest19 1 #DevFest20 1 #DevFest21 1 #DevFest22 1 #DevFest23 1 #hack4jp 3 11 weeks of Android 2 A MESSAGE FROM OUR CEO 1 A/B Testing 1 A4A 4 Accelerator 6 Accessibility 1 accuracy 1 Actions on Google 16 Activation Atlas 1 address validation API 1 Addy Osmani 1 ADK 2 AdMob 32 Ads

                                                            Spectre の影響を受けないウェブを作るための概念実証について
                                                          • ブラウザの戻る/進むを高速に!ヤフーにおけるBFCache有効化に向けた取り組み

                                                            ヤフー株式会社は、2023年10月1日にLINEヤフー株式会社になりました。LINEヤフー株式会社の新しいブログはこちらです。LINEヤフー Tech Blog こんにちは、第11/12代黒帯(ヤフー内のスキル任命制度/Webフロントエンド領域)の浜田(@narirow)と、Yahoo!ニュースのエンジニアの喜楽(@gladenjoy)です。今回は、ヤフーで対応をすすめてきた、BFCacheの有効化にむけた取り組みについてお話しします。BFCacheとはそもそも何か、有効化のボトルネックには何があるか、そして調査方法などの具体的な手法などを交えてご紹介します。 ヤフーではこれまでスムーズなユーザー体験を実現するべく、高速にページを表示できるBFCache技術の検証と、BFCacheの有効化率を上げる取り組みを行ってきました。その結果、Yahoo!ニュースでの検証では、PVが+2%向上、広告

                                                              ブラウザの戻る/進むを高速に!ヤフーにおけるBFCache有効化に向けた取り組み
                                                            • 昔の技術を知ることで、今の技術にも活かせることがある “デプロイ今昔物語”からmacopy氏が感じたこと

                                                              「YAPC(Yet Another Perl Conference)」は、Perlを軸としたITに関わるすべての人のためのカンファレンスです。ここで面白法人カヤックのmacopy氏が「デプロイ今昔物語 〜CGIからサーバーレスまで〜」をテーマに登壇。最後にDockerを使用したデプロイと、サーバーレスのデプロイについて話します。前回はこちらから。 Dockerを使用したデプロイの手法 macopy氏(以下、macopy):次にアーキテクチャの紹介に戻ります。アーキテクチャの紹介に戻るというか、Dockerはアーキテクチャのほうかなと思ったのでそうしています。 DockerはどちらかというとPull型デプロイなんですよね。オペレーション端末。先ほど言った手元のローカルからdocker push……。tarballの代わりにdocker pushにDocker Registry」「Docker

                                                                昔の技術を知ることで、今の技術にも活かせることがある “デプロイ今昔物語”からmacopy氏が感じたこと
                                                              • NuxtのSSRモードでメモリリーク?原因はaxios? - ANDPAD Tech Blog

                                                                はじめに 最近金髪から黒髪に戻して更生しました藤井(フロントエンドエンジニア)でございます。久々にテックブログに貢献させて頂きます! 今はメインの施工管理機能の改修の傍ら、新機能開発にも携わっておりまして、フロント側はSSRモードのNuxtを採用しております。さて、そんな中SREチームから「フロントエンドがメモリリークしていませんか?」との通報が入りました。 いやいや、そんなハズは・・と思いながらもDatadogを見てみると見事にメモリ消費量が右肩上がりに増えていってます。なぜじゃ・・・。 調査開始 メモリリークになるような処理を入れた覚えはないぞ!と思いつつも調査開始です。ひとまずChromeのDevtoolでPerformanceやMemoryタブを見ながら確認しますが、これと言って原因が見つかりません。 おかしい・・。なんでだろう。 あれこれ試しましたが解決せず、ほぼ1日消化しました

                                                                  NuxtのSSRモードでメモリリーク?原因はaxios? - ANDPAD Tech Blog
                                                                • DMMのGo言語5daysインターンが最高すぎた! - Qiita

                                                                  初めて企業のインターンに参加しました。DMMさんのGo言語5daysのインターンです。今回はこのインターンの内容、またGo言語でのAPI開発で学んだTipsを中心に記事を書きます。 温かい目で見てくださると嬉しいです。記事の内容に誤りがあった場合は、いつでもご指摘ください 🙇‍♂️ インターン概要 今回のインターンは8月5日から8月9日の5日間にわたって行われました。最終日はオフィス開催で、4日間はオンラインでの開催でした。 初日と2日目は主にライブラリの使い方を学び、残りの3日間はハンズオン でAPIのエンドポイントを実装しました。このインターンの教材はDMMさんの新卒バックエンド研修の課題として使用されているため、難易度はとても高かったです。 私はGo言語を使用した経験がありますが、本で独学という勉強の仕方だったので、少し古い情報で学んでいたこともあり、 今回最近のバージョンに追加さ

                                                                    DMMのGo言語5daysインターンが最高すぎた! - Qiita
                                                                  • みんなで書くGoのエンドポイントテスト - daisuzu's notes

                                                                    Webアプリケーションサーバーに何か大きな変更をしたいけど、既存のテストだと心許なかったので各エンドポイントにHandlerからのテストを追加することにした。 ただ全部のテストを自分1人で作っていくのはボリューム的に現実的ではなかったので、どうしたらチーム全員が書きやすいテストになるか考えて色々と整備してみた。 テストの書き方がある程度決まっている 期待する結果(want)を全て書かなくても良い テストの前後で必要な処理がわかる 具体例 テストの書き方がある程度決まっている エンドポイントごとにスタイルがバラバラだと都度どう書くか考えなければいけなくなってしまうため、基本的にはリクエストとレスポンスだけテーブルに指定するスタイルが良さそうだと考えた。 簡略化すると以下のような形式。 func TestFoo_Get(t *testing.T) { tests := []struct { n

                                                                      みんなで書くGoのエンドポイントテスト - daisuzu's notes
                                                                    • ウェブ エコシステムの根本的なセキュリティ保護に向けて

                                                                      .app 1 .dev 1 #11WeeksOfAndroid 13 #11WeeksOfAndroid Android TV 1 #Android11 3 #DevFest16 1 #DevFest17 1 #DevFest18 1 #DevFest19 1 #DevFest20 1 #DevFest21 1 #DevFest22 1 #DevFest23 1 #hack4jp 3 11 weeks of Android 2 A MESSAGE FROM OUR CEO 1 A/B Testing 1 A4A 4 Accelerator 6 Accessibility 1 accuracy 1 Actions on Google 16 Activation Atlas 1 address validation API 1 Addy Osmani 1 ADK 2 AdMob 32 Ads

                                                                        ウェブ エコシステムの根本的なセキュリティ保護に向けて
                                                                      • VPC Lambdaを実現しているAWS内の裏側と設計の心得三箇条

                                                                        こんにちは。SCSKのふくちーぬです。 皆さんは、プライベート(閉域網)環境下でのLambdaを利用したことありますでしょうか。セキュリティに厳しい環境下でLambdaを利用する場合は、VPC設定を施したLambdaを利用する機会があると思います。 今回は、インターネットに接していないVPC Lambdaの設計ポイントをお話しします。また、VPC Lambdaを実現しているAWS内の裏側もご紹介します。 VPC Lambdaとは LambdaにVPC設定を施すことで、顧客VPC内のサブネット上に足を出すことができて(ENIが作成されます)、RDS等のプライベートなリソースにアクセスをすることができます。VPC設定をするためには、VPC・サブネット・セキュリティグループが必要なため、EC2同様のネットワーク設計を行う必要があります。 VPC Lambdaをプライベートサブネット内に配置するこ

                                                                          VPC Lambdaを実現しているAWS内の裏側と設計の心得三箇条
                                                                        • SberSwapで、個別の学習プロセス無しでFaceSwapを実現する | cedro-blog

                                                                          1.はじめに 今までのFaceSwapは、個別に学習プロセスが必要なため処理に時間がかかるのが難点でした。今回ご紹介するのは、個別の学習プロセス無しでFaceSwapを実現するSberSwapという技術です。 2.SberSwapとは? 下記の図は、SberSwapのモデル図でAEI-Netと呼ばれており、3つの部分で構成されています。 1つ目がIdentity Encoderで、画像XsからベクトルZidを求めます。2つ目がMulti-level Attributes Encoderdで、U-Netと同様な構造を持ち画像Xtから特徴Zattを取り出します。そして、3つ目がAAD Generatorで、これらの情報から目的とする画像を生成します。 3.コード コードはGoogle Colabで動かす形にしてGithubに上げてありますので、それに沿って説明して行きます。自分で動かしてみたい

                                                                            SberSwapで、個別の学習プロセス無しでFaceSwapを実現する | cedro-blog
                                                                          • Nature Remo+AWS+LINE Notifyで緩やかな自宅監視(1)

                                                                            家族がいると自宅の様子が気になる、けれども監視カメラを設置するのは家族のプライバシー的に行き過ぎた感あり、もう少し緩やかな監視ができないか?と考えた際、照度の変化に着目したソリューションを思いついた。 つまり、家族が帰宅して部屋の電気を付けた、外出のため消灯した、電気を消して寝静まったといった状態の遷移を「照度の変化」によって検知し、スマホに通知する、といった具合だ。 概要 Nature Remo 3は外出先からスマートフォンで家電を制御するためのスマートリモコン製品のひとつであるが、照度や温度センサーが取得した情報を Nature Remo Cloud API によりクラウドから取得できる、という大変素晴らしい特徴がある。 自宅に設置したNature Remoの照度を、AWSのLambda関数により一定時間毎に取得してDynamoDBに蓄積する。前回取得した照度と比べて急激な変化があった

                                                                              Nature Remo+AWS+LINE Notifyで緩やかな自宅監視(1)
                                                                            • Lamdbaの開発を便利にするPythonのアプリケーションフレームワークJeffyが公開されました | DevelopersIO

                                                                              CX事業本部@大阪の岩田です。 下記リンクの通りServerless OperationsさんからJeffyというOSSのアプリケーションフレームワークが公開されました。 AWS Python Lambda用のアプリケーションフレームワークJeffyをリリースしました! サーバーレスなシステム開発ではServerless FrameworkやSAMを利用することが多いと思いますが、これらのフレームワークは「アプリケーションフレームワーク」ではありません。リソースの管理やデプロイを簡略化することはできても、アプリケーションのコードは開発者が全て実装する必要があり、コード量の削減や保守性の向上には寄与しません。じゃあDjangoのようなフレームワークを使ってLambdaを開発すればいいのか?というと、そういうわけでもありません。DjangoはLambdaの開発向けに設計されたフレームワークでは

                                                                                Lamdbaの開発を便利にするPythonのアプリケーションフレームワークJeffyが公開されました | DevelopersIO
                                                                              • Twilioを利用した障害時の自動連絡網システムについて - BASEプロダクトチームブログ

                                                                                この記事はBASE Advent Calendar 2020の5日目の記事です。 SRE Groupのngswです。 Eコマースプラットフォーム「BASE」における障害発生時に、社内関係者に連絡網に基づいて電話発信するシステムを構築しました。 このエントリでは、その導入までの経緯と具体的な当該システムの説明をします。 TL;DR 「BASE」で問題が発生した際に意思決定者に電話発信する周知システムを構築した 「導入前に考えたこと」をまず主題として書いた 参考URL記事のまま手順であるが、それでも導入時に詰まった事柄など落ち穂拾い的に追記した 謝辞 Twilio FunctionsとStudioを使って連続架電を行う - Qiita 大変わかりやすい記事であり、ほぼすべてを参考にさせていただいた。このQiita記事がなければ短期間で実現することは不可能であったと考える 導入に至る経緯 07月

                                                                                  Twilioを利用した障害時の自動連絡網システムについて - BASEプロダクトチームブログ
                                                                                • 【Ansible】メンテナンスしやすいPlaybookの書き方 | 電算星組

                                                                                  Playbookは外部ファイルのインポートや条件分岐やループなどの制御構文が使えるため、プログラミングと同様にソースコード品質管理の考え方を活用できます。 本記事では、筆者がPlaybookを作成する際に、後々メンテナンスしやすいように気を付けていることを紹介します。(もっと良い方法がある場合は、コメントいただけると助かります) インベントリ(Inventory) ターゲットノードにはホスト名とIPアドレスを書く インベントリ(Inventory)には、構成管理対象のノード(以下、ターゲットノード)を記載します。IPアドレス、ホスト名(FQDNも可)どちらの書き方も可能ですが、それぞれ以下の問題があります。 IPアドレス: ターゲットノードが何のサーバなのか分からず可読性が悪い ホスト名: Ansibleを動かすサーバがホスト名を名前解決できる必要がある 上記の問題を解決するため、ターゲッ