動画: https://youtu.be/QHjRGPw34EI?si=MWb-1v1i1S5MG0eE プロポーザル: https://fortee.jp/phperkaigi-2023/proposal/6211083d-fc51-49a3-8b27-485d8e231b1f
![Laravelへの異常な愛情 または私は如何にして心配するのを止めてEloquentを愛するようになったか](https://cdn-ak-scissors.b.st-hatena.com/image/square/7f9ff1ec0b60e00e9b85b9d63677e614d292f26a/height=288;version=1;width=512/https%3A%2F%2Ffiles.speakerdeck.com%2Fpresentations%2Ff00f406d0022403fb45c57ef0b64138b%2Fslide_0.jpg%3F25008764)
LAPRAS 社内で開催した Vue3 勉強会の資料を一部内容を変更して公開します。 Vue3 の新機能、Breaking Change に対して Codesandbox でひとつひとつ実行環境を作っています。動作・コードを検証しながら読んでもらえると嬉しいです。 🙋♂️ 対象読者 Vue2 を Vue3 に移行中 or 移行検討中の人 普段 Vue は触らないけど、教養的に Vue3 をキャッチアップしたい人 Vue3 の機能・注意点を普段フロントエンドを触らないメンバーに説明したい人 🏎️ Vue3 で何が変わる? 新たな API の追加 Teleport, Fragments、Suspenseなど便利な API が多数追加 リアクティブの改善 Vue2 はObject.definePropertyを利用したリアクティブの実装だったが、Vue3 ではProxy をベースに変更 パ
はじめに こんにちは、カミナシ社でソフトウェアエンジニアをやっている浦岡です。 我々は「ノーコードでユーザー独自の現場アプリを作成できる」サービスを開発しています。 そのサービスのフロントエンドの開発にはReact×Reduxを使っているのですが、 サービス特性のため「Reduxのstateがファットになりがち」であったり「コンポーネント間のデータの依存関係が多くなりがち」といった状態に陥ります。 その結果、アプリの反応速度が遅くなりがちです... この記事では、上のような状態に陥った「React×Redux」アプリの高速化の一例をサンプルアプリを用いて説明します。 サンプルアプリについて 今回、Reduxのチュートリアルにあるカウンターアプリを改良し、下のような「モンスターの捕獲記録」アプリを作ります。 サンプルアプリについて Version1(コンポーネントをブルブルさせてみる) まず
パフォーマンスは努力や意志力ではなく「環境」が決める 年収は、働き手の資質ではなく、住むところで決まるという事実がある。 職務経験、教育レベル、IQ(知能指数)の違いを考慮に入れて比較をおこなっても、年収の格差は同じように存在する。 要するに、働き手の資質自体にはあまり大きな違いがない。違うのは、その人が働いている地域の経済のあり方、とくにその地域の高技能の働き手の数なのだ。 一見、直観に反する事実だが、 「地域の住民が受け取る収入は、その地域の産業の生産性の高さで決まる」 と言われれば、ごく当たり前の話かもしれない。 極めて生産性の高い(≒収益性の高い)産業は、周囲にお金をばらまくので、高技能な人材から、純粋な肉体労働者まで、住民が就くことのできる仕事の種類を増やす。 その結果、労働者全体の手にする収入も向上する。高学歴の働き手だけでなく、学歴の低い人の給料も高くなるのだ。 実際、全米で
開発者向けのSQLインデックス解説サイト、管理についての間違いない知識を提供します。 インデックスは開発時には忘れられがちである一方で、非常に効果的なSQLのチューニング方法です。Use The Index, Lukeでは、HibernateなどのORMツールの解説にとどまらず、SQLのインデックスについて基礎から説明します。 Use The Index, LukeはSQLパフォーマンス詳解のWeb上の無料版です。サイトを気に入って頂けたら、ぜひ書籍も購入してみて下さい。また、このサイトの運営をサポートする様々なグッズも販売しています。 MySQL、Oracle、SQL ServerなどにおけるSQLのインデックスUse The Index, Lukeでは、ベンダにとらわれないインデックスの説明を心がけています。製品特有の事柄については、以下のような表示をしています。 DB2Use The
doda X(旧:iX転職)は、パーソルキャリアが運営するハイクラス転職サービス。今すぐ転職しない方にも登録いただいています。 今の自分の市場価値を確かめてみましょう。 売り手市場で熾烈を極める採用活動。なかなか優秀な人材や即戦力人材が採用できないと悩む企業も多いなか、苦労して採用した社員がすぐに辞めてしまった、高額な年俸を設定したのに期待通りの成果を上げられなかった・・・といった嘆きの声も聞かれます。 そんななか、雇用の流動性も高く、毎週のように新入社員が入社するような多くの外資系企業では、「オン・ボーディング」という人材開発手法が導入されており、最近ではメルカリなど日本の有力ベンチャーでも取り入れられています。 新しく入社した社員のパフォーマンスをなるべく早く発揮できるように、どんな研修が行われているのか――。数々の日本企業をオン・ボーディングの設計で支援するモティファイ株式会社取締役
Webパフォーマンス向上施策のために、今更ながら超速本1を読んだので、今までの自分の知見と合わせてまとめてみます。 なるべく柔らかく、改善施策ってまず何をどうすればいいの?という疑問を持った人に向けて書いています。 ▪️格言 そもそもWebは速い。遅くしているのは我々です。大抵は技術の問題ではなくて、人の問題。 引用元: テクニックではなく、今、本気で取り組むべきWebパフォーマンス (html5jパフォーマンス部 部長 竹洞さん) 心得 パフォーマンス向上に対する施策は大別すると以下の2通り 軽量化 (単純にやりとりするデータ容量を小さくすること) 圧縮 削除 最適化 (その時に最も適している実装・実行をとること) 経路・順番の変更 非同期 もっとも遅くしている原因を探して、それを対策するのが原則。「対効果」が絶対的正義である。手段から入るのは愚策。まず先に原因を知ることが重要。 ▪️1
tl;dr Railsではコネクションプール数を設定していても、1スレッド辺り1コネクションしか持ちません。 発端 アカツキではRails + Unicorn + Nginx + MySQLの構成をAWSで運用しており、c3.4xlargeのインスタンス上で1台辺り64のUnicornワーカープロセスが実行される設定になっています。 ソーシャルゲームでは時にたくさんのアプリケーションサーバを並列稼働される必要がでてきます。特に年末年始の時期は平時の2-3倍のトラフィックが予想され、アプリケーションサーバを最大100台で稼働させる必要がありました。 Railsのdatabase.ymlのpool設定は5だったので、単純に考えると最大 100台 * 64プロセス * 5接続 = 32,000個の接続が常時貼られるのでは?MySQLのmax_connectionsの設定は大丈夫か?という議論があ
Inside Frontend #1での発表内容です。 - [アメブロ2016 ~ React/ReduxでつくるIsomorphic web app ~](https://developers.cyberagent.co.jp/blog/archives/636/) - [アメブロ2016 ~…
こんにちは、バックエンドエンジニアのjoeです。主にAPIを担当しています。 VASILYのAPIでは、速度向上のためにModelオブジェクトをキャッシュしています。 最近、Modelキャッシュの仕組みを実装したので、その実装方法を紹介します。また、既存ライブラリとの比較についても書きたいと思います。 Modelキャッシュとは Modelキャッシュを簡単に言うと、下記の結果をキャッシュすることです。 > Item.find(1) => #<Item:0x007fdfe398a678> このように、1レコード単位のActiveRecordをキャッシュすることを本記事ではModelキャッシュと呼びます。ActiveRecordをキャッシュすることで、データベースへの読み込み回数を減らし、レスポンス速度を向上させることができます。 既存ライブラリの紹介と問題点 Modelキャッシュを実現できるG
スケーリング=時速160㎞で走行しながら自動車の全ての部品を取り替えること -Mike Krieger Instagramの共同設立者@ Airbnb OpenAir 2015 Airbnbのピーク時のアクセス数は、毎年夏のピーク時で見ると年率3.5倍で増加しています。 2015年夏の旅行シーズンを前に、Airbnbの基盤チームは、夏季のアクセスで予想されるデータ通信量に対処するため、データベースのスケーリングで忙殺されていました。中でも特に全体への影響が大きかったプロジェクトが、特定のテーブルを、アプリケーションの機能に従ってそれぞれのデータベースに分割することを目的としたプロジェクトでした。これは通常、アプリケーション層のフォームの変更やデータ移行、データの整合性を保証する堅牢性テストなど、最小限のダウンタイムで多大な技術的投資を必要とするものです。何週間もかかるエンジニアリング時間
これまで数カ月にわたり、私たちはAtomのパフォーマンスの改善に取り組んできました。その結果、最適化するための課題として特に興味深いのが マーカ という構造体だと分かりました。マーカはバッファの内容が変更されても、バッファの論理的な領域を追跡することができます。例えば、以下の図で緑色のハイライトがかかった部分のマーカは、文字列を書き換えたとしても同じ領域に残り続けます。 マーカは、Atomの機能を幅広くサポートする基本的なプリミティブです。検索および置換を行う場合には、マーカを使うことで 検索結果のハイライト表示 ができます。スニペットの場合も、文字列を書き換える際にマーカを使い、 タブストップで移動する位置 を追跡することができます。さらにはスペルチェックの場合でも、マーカを使って スペルミスのある単語を抽出 したり、その単語を書き換える際の再チェックをしたりすることもできます。そもそも
cvpaper.challengeはコンピュータビジョン分野の今を映し、トレンドを創り出す挑戦です。論文サマリ・アイディア考案・議論・実装・論文投稿に取り組み、凡ゆる知識を共有しています。 http://xpaperchallenge.org/cv/ 本資料はViEW2021チュートリアルセッション「最新研究の始め方」のプレゼン素材です。また、xpaper.challengeの2020年末ワークショップとしてプレゼンした「研究効率化Tips」の拡張版です。本資料では3社12研究室300ページにわたるノウハウの詰め合わせです。 VIEW2021のチュートリアルセッションでは時間の制限があるため、こちらの資料から一部抜粋して発表を行うことになりますが、VIEW2021チュートリアルセッションの方にも足を運んでいただければ幸いです。 VIEW2021チュートリアルセッション:http://vie
ゲーマーなら誰しも「なんかロード時間が長いなぁー」や「表示が遅くなるんだけど……」といった、ゲームの挙動がおかしくなる経験をしたことがあるはず。 そうした不快感を減らすために、製作陣は日夜、血の涙を流すほど(おおげさ?)の努力を重ねているわけだが、その苦労はなかなか一般人のわれわれに見えてこない。 そこでぜひ読んで欲しいのが本記事だ。ソフト開発エンジンUnity(ユニティ)の開発者向けイベント“Unite 2015 Tokyo”にて、スマホ向けRPG『白猫プロジェクト』で実施したパフォーマンス調整について、コロプラの技術者が具体例を交えて語った。 その要点をまとめたレポート記事をお届けしていく。
本記事の公開後の2016年7月にはてなにおけるチューニング事例を紹介した。 はてなにおけるLinuxネットワークスタックパフォーマンス改善 / Linux network performance improvement at hatena - Speaker Deck HAProxy や nginx などのソフトウェアロードバランサやリバースプロキシ、memcached などの KVS のような高パケットレートになりやすいネットワークアプリケーションにおいて、単一の CPU コアに負荷が偏り、マルチコアスケールしないことがあります。 今回は、このようなネットワークアプリケーションにおいて CPU 負荷がマルチコアスケールしない理由と、マルチコアスケールさせるための Linux カーネルのネットワークスタックのチューニング手法として RFS (Receive Flow Steering) を
だいぶ前からDocker(Linuxコンテナ)のパフォーマンスについて、速いことは速いだろうけどどの程度速いのか、もし遅いことがあるなら何がパフォーマンスにとって重要なのか(AUFSが遅いとかそういうの)が気になっていたので、今回は で紹介されていた Docker のパフォーマンス検証に関する IBM の Research Report を読んだ。Report の内容をベースに、Docker のパフォーマンスの勘所などをまとめてみた。 Report のタイトルは An Updated Performance Comparison of Virtual Machines and Linux Containers 。 GitHub にベンチマークコードと実験データが置いてあってちゃんとしてる。 前提 まず、VMとコンテナの歴史を振り返るのに知らぬはエンジニアの恥。今さら聞けない【コンテナ/仮想
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く