ヤフー株式会社は、2023年10月1日にLINEヤフー株式会社になりました。LINEヤフー株式会社の新しいブログはこちらです。LINEヤフー Tech Blog こんにちは、第11代黒帯(ヤフー内のスキル任命制度/Webフロントエンド領域)の浜田(@narirow)です。今回はヤフー全社で実施してきた、「Webパフォーマンス改善プロジェクト」についてお話ししたいと思います。 長期に渡る活動の結果、多くのサービスのWebパフォーマンスが徐々に向上しています。この記事では、取り組みの経緯や、多くのサービス分析を通してわかったコスパの良い施策(比較的簡単に実施できてスコアも上がりやすい施策)などをご紹介します。 全社横断でWebパフォーマンス改善を実施する経緯 さかのぼること2021年、Googleから以下のような案内がありました。 「Core Web VitalsがGoogle検索の検索順位に
Vue.jsを使った開発でよく悩まされるのがコンポーネントの肥大化です。複雑なアプリケーションになると、1つのコンポーネントが<script>ブロックだけで数百行…なんてこともめずらしくないでしょう。従来、Vue 2までの標準的な書き方では、UIとしてのコンポーネントの細分化はできてもロジックの分割や整理には限界がありました。しかし、Vue 3のComposition APIを活用すると、はるかに柔軟な整理・分割が可能です。 「Composition APIは難しそうだからまだ使っていない」という方、あるいは「導入はしているけどイマイチメリットがわからない」という方は、この機会にぜひComposition APIを活用したコンポーネントの整理術を試してみてはいかがでしょうか? なぜ、Vueのコンポーネントは肥大化するのか? 簡単な例を見てみましょう。下のサンプルはミニマムなアナログ時計のコ
Mastodon は脱中央集権型のSNSで、 だれでも自由に運用できるTwitterに似たサービスです。 Mastodon APIは、タイムラインを参照したり 投稿(Twitterのツイート)したりする機能が用意されています。 公式クライアント(サーバーのWeb UI)でも使われているため、 クライアントやBOTを作るのに必要な機能は揃っています。 Mastodon APIの基本 Mastodon APIは基本的にOAuth2.0で認証をするREST APIで、 レスポンスはJSON形式です。 ドキュメントは こちら で提供されています。 認証周りから手を付けていくと、 実際に使うまでに長い説明が必要になってしまうので、 まずは認証を必要としない 指定IDの投稿の情報を得るAPI から呼んでみましょう。 https://サーバー名/api/v1/statuses/投稿ID 具体例として h
当記事について この記事はMastodonアドベントカレンダー 5日目の記事です(遅刻すみません・・・) なお、最初の方は申し訳ないながらポエムが多いので、wasabiをMastodonのオブジェクトストレージにした話だけ見たい方はオブジェクトストレージwasabi導入についてまで飛んでください。 私について 自己紹介 ピトルと申します。某北海道の情報系大学の2回目の4年生をしているしがない学生です。元https://mstdn.funの住民でした。現在は(決済オタク丼|決済丼)mstdn.kessai-otaku.clubの管理人をしております。 Mastodonとの関わりについて 8月ころの、それこそTwitterでUserStreamの廃止を契機に、Mastodonにチラチラ来るようになりました。多分akkiesoft氏(Mastodon)のアカウントプロフィールをちらっと覗いた時に
Getting Started¶ System Requirements¶ Swift development currently targets Ubuntu Server 22.04, but should work on most Linux platforms. Swift is written in Python and has these dependencies: Python (2.7 or 3.6-3.10) rsync 3.x liberasurecode The Python packages listed in the requirements file Testing additionally requires the test dependencies Testing requires these distribution packages Developmen
C:\tmp>rclone config [Enter] 2015/07/17 15:10:50 Failed to load config file C:\Users\mcn/.rclone.conf - using defaults No remotes found - make a new one n) New remote q) Quit config n/q> n [Enter] name> conoha [Enter] (適当な名前で大丈夫 =)) What type of source is it? Choose a number from below 1) swift 2) s3 3) local 4) google cloud storage 5) dropbox 6) drive type> 1 [Enter] (ConoHaはOpenStack Swiftなので1を選
CentOS 7のNginxをTLS 1.3に対応させたいが、ソースからビルド等せずに出来るだけ簡単にyumでTLS 1.3対応済みのNginxをインストール(又はアップデート)したい。 そんな要望が多いと思いますのでその方法を解説します。 ※動作確認環境(2022/06/06更新) CentOS 7.9 Nginx 1.22.0 OpenSSL 1.1.1o 現状 OpenSSL 1.1.1が2018年秋に公開されてTLS 1.3に正式対応したが、CentOS 7に標準で入っているOpenSSLのバージョンは1.0.2系なのでそのままではTLS 1.3を利用できない。 CentOS 7のOpenSSL自体を1.1.1に上げてしまうのが手っ取り早く思えるが、そんなことをしたらNginx以外の他のパッケージも巻き込んで非常にややこしいことになる。 それならNginxだけにOpenSSL 1.
はじめに こんにちは。kenjiです。 先日CentOS7.3をインストールしたので、その上でHTTP/2が動作する環境を作っていきます HTTP/2とはなんぞや、という方はwikipediaのこちらのリンク先へ、どうぞ 過去にも弊社blogでもHTTP/2を扱ったのですが、 GoogeChrome 51以降ではNPNなHTTP/2は利用できなくなりました。そのためALPN対応の方法を記載します。 概要 実行環境 インストール方法 環境準備 ソース用意 spec修正 rpmbuild yumにてインストール 動作確認 まとめ 概要 nginxのrpm作成とインストール 実行環境 CentOS 7.3 インストール方法 yumリポジトリからnginxをインストールすることもできますが、 CentOSのopensslの標準バージョンが1.0.1系となっており、HTTP/2では1.0.2が必要と
Web API の観点からいくとリソース名が動作を表しているので、あまりよくない設計ですが、今回はやりたいことができればいいので、気にしないでおきます。 API の作成 API Gateway コンソール AWS コンソールから API Gateway を選択します。 まだ、作ったことがなければ案内が表示されるので「今すぐ始める」をクリックします。 API の作成 まず、 API を作成します。ここで “API” とは一連の Web API のリソースとメソッドの集合を言います。 API に対してユニークな URL が振られ、その後にリソース名を追加した URL にアクセスすることで API を実行することができます。 たとえば users というリソースを定義するとアクセスするための URL は次のようになります。 (hogehoge は API のデプロイ時に自動で振り出されます) 「
Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? Karabiner-Elementsの各設定項目については、Karabiner-Elementsの各設定項目の内容についてでリファレンス的にまとめましたので、こちらの記事は、実現したい機能から設定ファイルの書き方を探せる(要は逆引き)ような記事にしました。 紹介する機能は、以下のとおりです。 "control-M"のような組み合わせを別の組み合わせに変換 "command-P"のような組み合わせを任意の単独キーに変換 "F5"や"Escape"等の単独のキーを"control-O"のような組み合わせに変換 特定のキーを無効化する(201
はじめに ローカルにあるjsonファイルを$.getJSONで読み込んで、それを使ってあれこれやりたかったが、 Chromeで以下が発生。 ローカルファイルにAjaxリクエストを送ると怒られる。 XMLHttpRequest cannot load file:///Users/test/Documents/json/contents.json.Cross origin requests are only supported for protocol schemes: http, data, chrome, chrome-extension, https, chrome-extension-resource. これが発生すること自体は知っていたが、特に今までChromeじゃないと困るってことは無かったのでエラーが起きないFirefoxを使ってローカルで確認していた。 今回Chromeの方がい
様々な情報を共有するなら「knowledge」 AWS Centos7へJava8+Tomcat8+httpd(Apache)でインストール備忘 情報の共有ツールとして「knowledge」をAWSのCentOS7へインストールした際のセットアップログを備忘します。 「knowledge」については下記のページを参照してください。 AWSのAMI ID CentOS Linux 7 x86_64 HVM EBS 1602-b7ee8a69-ee97-4a49-9e68-afaee216db2e-ami-d7e1d2bd.3 (ami-eec1c380) を利用しました。 OSのアップデートとjavaのJDKをインストールしてjavaヴァージョンを1.8.0系を指定 sudo yum update sudo yum install java-1.8.0-openjdk sudo altern
「snmpでスクリプトなど使って好きな値を返したい」というとき、 snmpdの設定としてはexecやshがありますが、 自分はシンプルなpassをよく使っています。 (extendというのもあるようです。Net-SNMPで外部コマンドの結果を返すときに、そのMIBを固定したいの - (ひ)メモ) snmpd.confに設定追加 .1.3.6.1.4.1.2021.255配下のアクセスで指定されたスクリプトが実行されます。 pass .1.3.6.1.4.1.2021.255 /usr/local/bin/snmppass.pl スクリプトはこんな感じ 引数、出力フォーマット、まぁ普通に見ればわかると思います! #!/usr/bin/perl use strict; use warnings; my $base_oid = ".1.3.6.1.4.1.2021.255"; my ($opt,
社内勉強会で Ansible の初歩的な発表をしたのでその資料を公開します。 間違い等あるとおもいますが、指摘して頂ければ幸いです。 Ansible とは? 構成管理ツールです。Chef とか Puppet とかああいうののお仲間です。 Puppet は知りませんが、Chef は少し使って嫌気が差して止めました。 理由は 特殊なことをしようとすると Ruby の知識が必要になる 構成管理「される側」にも Chef が必要(エージェント) が主です。あとなんだかんだ言って結構複雑です。 その点 Ansible は下記の特徴があります。 標準入出力さえできればプラグインの言語は何でも構わない 一つ Ansible が入っているサーバと sshd が動いている対象サーバがあればそれでOK(要するに準備が要らない。もちろん自分自身だけでもOK) 標準(組込みモジュール?)で結構なんでもできる(ただ
About git-flowはgitの拡張であり、Vincent Driessenの提唱するブランチモデルを実現するための高度なリポジトリ操作を提供します。 more ★ ★ ★ このチートシートは基本的な使い方とgit-flowの効果を表します。 ★ ★ ★ Basic tips Git flow は素晴らしいコマンドライン補助と出力を提供します。何が起こるか注意深く読み解いてください。 macOS Clientの Sourcetree は素晴らしいGUIとgit-flowサポートを提供します。 - Git-flow はマージすることをベースとして考えるソリューションです。リベースは行いません。 ★ ★ ★ macOS Homebrew $ brew install git-flow-avh Macports $ port install git-flow-avh Linux $ apt
$ gibo --version gibo 1.0.4 by Simon Whitaker <sw@netcetera.org> https://github.com/simonwhitaker/gibo $ gibo java ### https://raw.github.com/github/gitignore/8c9b77cb5c85f6464c0bb31abdf4cfcfdf6833bb/java.gitignore *.class # Mobile Tools for Java (J2ME) .mtj.tmp/ # Package Files # *.jar *.war *.ear # virtual machine crash logs, see http://www.java.com/en/download/help/error_hotspot.xml hs_err_pid*
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く