Enviar búsqueda
Cargar
Web時代の大富豪的プログラミングのススメ
•
3 recomendaciones
•
7,346 vistas
Hideyuki Takeuchi
Seguir
社内勉強会のLTで当たり前なことを大まじめに話してみました。
Leer menos
Leer más
Tecnología
Denunciar
Compartir
Denunciar
Compartir
1 de 14
Descargar ahora
Descargar para leer sin conexión
Recomendados
ネットワーク ゲームにおけるTCPとUDPの使い分け
ネットワーク ゲームにおけるTCPとUDPの使い分け
モノビット エンジン
【2000行弱!】x86用自作カーネルの紹介
【2000行弱!】x86用自作カーネルの紹介
Yuma Ohgami
3種類のTEE比較(Intel SGX, ARM TrustZone, RISC-V Keystone)
3種類のTEE比較(Intel SGX, ARM TrustZone, RISC-V Keystone)
Kuniyasu Suzaki
Javaコードが速く実⾏される秘密 - JITコンパイラ⼊⾨(JJUG CCC 2020 Fall講演資料)
Javaコードが速く実⾏される秘密 - JITコンパイラ⼊⾨(JJUG CCC 2020 Fall講演資料)
NTT DATA Technology & Innovation
No skk, no life.
No skk, no life.
digitalghost
目grep入門 +解説
目grep入門 +解説
murachue
WebSocket / WebRTCの技術紹介
WebSocket / WebRTCの技術紹介
Yasuhiro Mawarimichi
Twitterのsnowflakeについて
Twitterのsnowflakeについて
moai kids
Recomendados
ネットワーク ゲームにおけるTCPとUDPの使い分け
ネットワーク ゲームにおけるTCPとUDPの使い分け
モノビット エンジン
【2000行弱!】x86用自作カーネルの紹介
【2000行弱!】x86用自作カーネルの紹介
Yuma Ohgami
3種類のTEE比較(Intel SGX, ARM TrustZone, RISC-V Keystone)
3種類のTEE比較(Intel SGX, ARM TrustZone, RISC-V Keystone)
Kuniyasu Suzaki
Javaコードが速く実⾏される秘密 - JITコンパイラ⼊⾨(JJUG CCC 2020 Fall講演資料)
Javaコードが速く実⾏される秘密 - JITコンパイラ⼊⾨(JJUG CCC 2020 Fall講演資料)
NTT DATA Technology & Innovation
No skk, no life.
No skk, no life.
digitalghost
目grep入門 +解説
目grep入門 +解説
murachue
WebSocket / WebRTCの技術紹介
WebSocket / WebRTCの技術紹介
Yasuhiro Mawarimichi
Twitterのsnowflakeについて
Twitterのsnowflakeについて
moai kids
shared_ptrとゲームプログラミングでのメモリ管理
shared_ptrとゲームプログラミングでのメモリ管理
DADA246
PFNのML/DL基盤を支えるKubernetesにおける自動化 / DevOpsDays Tokyo 2021
PFNのML/DL基盤を支えるKubernetesにおける自動化 / DevOpsDays Tokyo 2021
Preferred Networks
本当は恐ろしい分散システムの話
本当は恐ろしい分散システムの話
Kumazaki Hiroki
Java でつくる低レイテンシ実装の技巧
Java でつくる低レイテンシ実装の技巧
Ryosuke Yamazaki
いまさら聞けない!CUDA高速化入門
いまさら聞けない!CUDA高速化入門
Fixstars Corporation
FlutterでGraphQLを扱う
FlutterでGraphQLを扱う
IgaHironobu
暗号技術の実装と数学
暗号技術の実装と数学
MITSUNARI Shigeo
マイクロにしすぎた結果がこれだよ!
マイクロにしすぎた結果がこれだよ!
mosa siru
C/C++プログラマのための開発ツール
C/C++プログラマのための開発ツール
MITSUNARI Shigeo
Allocators@C++11
Allocators@C++11
Cryolite
BuildKitの概要と最近の機能
BuildKitの概要と最近の機能
Kohei Tokunaga
Concurrent Mark-Sweep Garbage Collection #jjug_ccc
Concurrent Mark-Sweep Garbage Collection #jjug_ccc
Yuji Kubota
iostat await svctm の 見かた、考え方
iostat await svctm の 見かた、考え方
歩 柴田
BoostAsioで可読性を求めるのは間違っているだろうか
BoostAsioで可読性を求めるのは間違っているだろうか
Yuki Miyatake
LogbackからLog4j 2への移行によるアプリケーションのスループット改善 ( JJUG CCC 2021 Fall )
LogbackからLog4j 2への移行によるアプリケーションのスループット改善 ( JJUG CCC 2021 Fall )
Hironobu Isoda
Metaspace
Metaspace
Yasumasa Suenaga
eBPFを用いたトレーシングについて
eBPFを用いたトレーシングについて
さくらインターネット株式会社
JVMのGCアルゴリズムとチューニング
JVMのGCアルゴリズムとチューニング
佑哉 廣岡
Pythonの理解を試みる 〜バイトコードインタプリタを作成する〜
Pythonの理解を試みる 〜バイトコードインタプリタを作成する〜
Preferred Networks
ゼロから始める自作 CPU 入門
ゼロから始める自作 CPU 入門
Hirotaka Kawata
20140828 #ssmjp 社内チューニンガソンで優勝したはなし
20140828 #ssmjp 社内チューニンガソンで優勝したはなし
Masahiro NAKAYAMA
ゆるかわPhp
ゆるかわPhp
Ryota Mochizuki
Más contenido relacionado
La actualidad más candente
shared_ptrとゲームプログラミングでのメモリ管理
shared_ptrとゲームプログラミングでのメモリ管理
DADA246
PFNのML/DL基盤を支えるKubernetesにおける自動化 / DevOpsDays Tokyo 2021
PFNのML/DL基盤を支えるKubernetesにおける自動化 / DevOpsDays Tokyo 2021
Preferred Networks
本当は恐ろしい分散システムの話
本当は恐ろしい分散システムの話
Kumazaki Hiroki
Java でつくる低レイテンシ実装の技巧
Java でつくる低レイテンシ実装の技巧
Ryosuke Yamazaki
いまさら聞けない!CUDA高速化入門
いまさら聞けない!CUDA高速化入門
Fixstars Corporation
FlutterでGraphQLを扱う
FlutterでGraphQLを扱う
IgaHironobu
暗号技術の実装と数学
暗号技術の実装と数学
MITSUNARI Shigeo
マイクロにしすぎた結果がこれだよ!
マイクロにしすぎた結果がこれだよ!
mosa siru
C/C++プログラマのための開発ツール
C/C++プログラマのための開発ツール
MITSUNARI Shigeo
Allocators@C++11
Allocators@C++11
Cryolite
BuildKitの概要と最近の機能
BuildKitの概要と最近の機能
Kohei Tokunaga
Concurrent Mark-Sweep Garbage Collection #jjug_ccc
Concurrent Mark-Sweep Garbage Collection #jjug_ccc
Yuji Kubota
iostat await svctm の 見かた、考え方
iostat await svctm の 見かた、考え方
歩 柴田
BoostAsioで可読性を求めるのは間違っているだろうか
BoostAsioで可読性を求めるのは間違っているだろうか
Yuki Miyatake
LogbackからLog4j 2への移行によるアプリケーションのスループット改善 ( JJUG CCC 2021 Fall )
LogbackからLog4j 2への移行によるアプリケーションのスループット改善 ( JJUG CCC 2021 Fall )
Hironobu Isoda
Metaspace
Metaspace
Yasumasa Suenaga
eBPFを用いたトレーシングについて
eBPFを用いたトレーシングについて
さくらインターネット株式会社
JVMのGCアルゴリズムとチューニング
JVMのGCアルゴリズムとチューニング
佑哉 廣岡
Pythonの理解を試みる 〜バイトコードインタプリタを作成する〜
Pythonの理解を試みる 〜バイトコードインタプリタを作成する〜
Preferred Networks
ゼロから始める自作 CPU 入門
ゼロから始める自作 CPU 入門
Hirotaka Kawata
La actualidad más candente
(20)
shared_ptrとゲームプログラミングでのメモリ管理
shared_ptrとゲームプログラミングでのメモリ管理
PFNのML/DL基盤を支えるKubernetesにおける自動化 / DevOpsDays Tokyo 2021
PFNのML/DL基盤を支えるKubernetesにおける自動化 / DevOpsDays Tokyo 2021
本当は恐ろしい分散システムの話
本当は恐ろしい分散システムの話
Java でつくる低レイテンシ実装の技巧
Java でつくる低レイテンシ実装の技巧
いまさら聞けない!CUDA高速化入門
いまさら聞けない!CUDA高速化入門
FlutterでGraphQLを扱う
FlutterでGraphQLを扱う
暗号技術の実装と数学
暗号技術の実装と数学
マイクロにしすぎた結果がこれだよ!
マイクロにしすぎた結果がこれだよ!
C/C++プログラマのための開発ツール
C/C++プログラマのための開発ツール
Allocators@C++11
Allocators@C++11
BuildKitの概要と最近の機能
BuildKitの概要と最近の機能
Concurrent Mark-Sweep Garbage Collection #jjug_ccc
Concurrent Mark-Sweep Garbage Collection #jjug_ccc
iostat await svctm の 見かた、考え方
iostat await svctm の 見かた、考え方
BoostAsioで可読性を求めるのは間違っているだろうか
BoostAsioで可読性を求めるのは間違っているだろうか
LogbackからLog4j 2への移行によるアプリケーションのスループット改善 ( JJUG CCC 2021 Fall )
LogbackからLog4j 2への移行によるアプリケーションのスループット改善 ( JJUG CCC 2021 Fall )
Metaspace
Metaspace
eBPFを用いたトレーシングについて
eBPFを用いたトレーシングについて
JVMのGCアルゴリズムとチューニング
JVMのGCアルゴリズムとチューニング
Pythonの理解を試みる 〜バイトコードインタプリタを作成する〜
Pythonの理解を試みる 〜バイトコードインタプリタを作成する〜
ゼロから始める自作 CPU 入門
ゼロから始める自作 CPU 入門
Similar a Web時代の大富豪的プログラミングのススメ
20140828 #ssmjp 社内チューニンガソンで優勝したはなし
20140828 #ssmjp 社内チューニンガソンで優勝したはなし
Masahiro NAKAYAMA
ゆるかわPhp
ゆるかわPhp
Ryota Mochizuki
AWS Lambda with Java/Scala #渋谷Java 第十二回
AWS Lambda with Java/Scala #渋谷Java 第十二回
hajime ni
高速な暗号実装のためにしてきたこと
高速な暗号実装のためにしてきたこと
MITSUNARI Shigeo
POWER8サーバでMariaDBベンチマーク
POWER8サーバでMariaDBベンチマーク
NHN テコラス株式会社
Web Operations and Perl kansai.pm#14
Web Operations and Perl kansai.pm#14
Masahiro Nagano
第六回渋谷Java Java8のJVM監視を考える
第六回渋谷Java Java8のJVM監視を考える
chonaso
地方企業がソーシャルゲーム開発を成功させるための10のポイント
地方企業がソーシャルゲーム開発を成功させるための10のポイント
Kentaro Matsui
SmartNews TechNight Vol5 : SmartNews AdServer 解体新書 / ポストモーテム
SmartNews TechNight Vol5 : SmartNews AdServer 解体新書 / ポストモーテム
SmartNews, Inc.
Sparkパフォーマンス検証
Sparkパフォーマンス検証
BrainPad Inc.
Rdbms起点で考えると見えない世界 okuyama勉強会
Rdbms起点で考えると見えない世界 okuyama勉強会
Masakazu Muraoka
泥臭い運用から、プログラマブルインフラ構築(に行きたい)
泥臭い運用から、プログラマブルインフラ構築(に行きたい)
Akihiro Kuwano
目指せ1秒切り!ECサイト表示高速化のワザ
目指せ1秒切り!ECサイト表示高速化のワザ
Kohei MATSUSHITA
Zabbixでvmc statsの情報など監視
Zabbixでvmc statsの情報など監視
Shota Onishi
Dockerを使ったローカルでの開発から本番環境へのデプロイまで
Dockerを使ったローカルでの開発から本番環境へのデプロイまで
Ryo Nakamaru
HandlerSocket plugin for MySQL
HandlerSocket plugin for MySQL
akirahiguchi
Linux/DB Tuning (DevSumi2010, Japanese)
Linux/DB Tuning (DevSumi2010, Japanese)
Yoshinori Matsunobu
YAPC::Asia 2008 Tokyo - Pathtraq - building a computation-centric web service
YAPC::Asia 2008 Tokyo - Pathtraq - building a computation-centric web service
Kazuho Oku
Craft CMSに最適なサーバはどんな環境?
Craft CMSに最適なサーバはどんな環境?
Kei Mikage
汎用性と高速性を目指したペアリング暗号ライブラリ mcl
汎用性と高速性を目指したペアリング暗号ライブラリ mcl
MITSUNARI Shigeo
Similar a Web時代の大富豪的プログラミングのススメ
(20)
20140828 #ssmjp 社内チューニンガソンで優勝したはなし
20140828 #ssmjp 社内チューニンガソンで優勝したはなし
ゆるかわPhp
ゆるかわPhp
AWS Lambda with Java/Scala #渋谷Java 第十二回
AWS Lambda with Java/Scala #渋谷Java 第十二回
高速な暗号実装のためにしてきたこと
高速な暗号実装のためにしてきたこと
POWER8サーバでMariaDBベンチマーク
POWER8サーバでMariaDBベンチマーク
Web Operations and Perl kansai.pm#14
Web Operations and Perl kansai.pm#14
第六回渋谷Java Java8のJVM監視を考える
第六回渋谷Java Java8のJVM監視を考える
地方企業がソーシャルゲーム開発を成功させるための10のポイント
地方企業がソーシャルゲーム開発を成功させるための10のポイント
SmartNews TechNight Vol5 : SmartNews AdServer 解体新書 / ポストモーテム
SmartNews TechNight Vol5 : SmartNews AdServer 解体新書 / ポストモーテム
Sparkパフォーマンス検証
Sparkパフォーマンス検証
Rdbms起点で考えると見えない世界 okuyama勉強会
Rdbms起点で考えると見えない世界 okuyama勉強会
泥臭い運用から、プログラマブルインフラ構築(に行きたい)
泥臭い運用から、プログラマブルインフラ構築(に行きたい)
目指せ1秒切り!ECサイト表示高速化のワザ
目指せ1秒切り!ECサイト表示高速化のワザ
Zabbixでvmc statsの情報など監視
Zabbixでvmc statsの情報など監視
Dockerを使ったローカルでの開発から本番環境へのデプロイまで
Dockerを使ったローカルでの開発から本番環境へのデプロイまで
HandlerSocket plugin for MySQL
HandlerSocket plugin for MySQL
Linux/DB Tuning (DevSumi2010, Japanese)
Linux/DB Tuning (DevSumi2010, Japanese)
YAPC::Asia 2008 Tokyo - Pathtraq - building a computation-centric web service
YAPC::Asia 2008 Tokyo - Pathtraq - building a computation-centric web service
Craft CMSに最適なサーバはどんな環境?
Craft CMSに最適なサーバはどんな環境?
汎用性と高速性を目指したペアリング暗号ライブラリ mcl
汎用性と高速性を目指したペアリング暗号ライブラリ mcl
Más de Hideyuki Takeuchi
もっとデータ可視化をカジュアルに! OSSプロジェクト「E2D3」
もっとデータ可視化をカジュアルに! OSSプロジェクト「E2D3」
Hideyuki Takeuchi
オープンソースプロジェクト E2D3のご紹介
オープンソースプロジェクト E2D3のご紹介
Hideyuki Takeuchi
どんなデータでもキレイに魅せる! 〜HTML5/JavaScriptでグラフを描画する今時の手法〜
どんなデータでもキレイに魅せる! 〜HTML5/JavaScriptでグラフを描画する今時の手法〜
Hideyuki Takeuchi
SPEEDA/NewsPicksを支える価値を生み出す技術の選定手法
SPEEDA/NewsPicksを支える価値を生み出す技術の選定手法
Hideyuki Takeuchi
とあるCTØの切込隊長日誌(スタートアップ) ビジネス篇
とあるCTØの切込隊長日誌(スタートアップ) ビジネス篇
Hideyuki Takeuchi
Reactive Programming
Reactive Programming
Hideyuki Takeuchi
ScalaCL in ScalaKaigi
ScalaCL in ScalaKaigi
Hideyuki Takeuchi
Real-Time 3D Programming in Scala
Real-Time 3D Programming in Scala
Hideyuki Takeuchi
Communication between Wicket and Flex
Communication between Wicket and Flex
Hideyuki Takeuchi
Más de Hideyuki Takeuchi
(9)
もっとデータ可視化をカジュアルに! OSSプロジェクト「E2D3」
もっとデータ可視化をカジュアルに! OSSプロジェクト「E2D3」
オープンソースプロジェクト E2D3のご紹介
オープンソースプロジェクト E2D3のご紹介
どんなデータでもキレイに魅せる! 〜HTML5/JavaScriptでグラフを描画する今時の手法〜
どんなデータでもキレイに魅せる! 〜HTML5/JavaScriptでグラフを描画する今時の手法〜
SPEEDA/NewsPicksを支える価値を生み出す技術の選定手法
SPEEDA/NewsPicksを支える価値を生み出す技術の選定手法
とあるCTØの切込隊長日誌(スタートアップ) ビジネス篇
とあるCTØの切込隊長日誌(スタートアップ) ビジネス篇
Reactive Programming
Reactive Programming
ScalaCL in ScalaKaigi
ScalaCL in ScalaKaigi
Real-Time 3D Programming in Scala
Real-Time 3D Programming in Scala
Communication between Wicket and Flex
Communication between Wicket and Flex
Web時代の大富豪的プログラミングのススメ
1.
WEB時代の 大富豪的プログラミング
のススメ @chimerast たけうちひでゆき
2.
自己紹介 • たけうちひでゆき • 肩書き:
永遠のNEET • Twitter: @chimerast
3.
富豪的プログラミング • メモリや実行効率を気にしないでお気楽にプロ グラムを作る •
条件が変わる度にすべての計算や表示を行なう by 増井俊之 (富豪化理論研究家) 1996/10/14 http://www.pitecan.com/fugo.html
4.
memcachedの功罪 • 猫も
子もmemcached • キャッシュが欲しい? じゃあmemcachedで。 • そんな装備で大丈夫か?
5.
じゃあ、何使えばいいの?
6.
In-Process Cache
7.
In-Process Cache • Map<String,
T> cache = new HashMap<String, T>(); • var cache = {}; • %cache = ();
8.
In-Process Cacheの利点 • ネットワークコストがかからない! •
Serializationコストがかからない! • 注: ちゃんとキャッシュ用途で使うならLRUアルゴリズム等による破 棄を実装したモジュールを使うこと • あとThread-safeかどうかも重要
9.
データ数による速度の違い
Nop LocalMemcached RemoteMemcached InProcessCache 800ms 600ms 400ms 200ms 0ms 1 10 100 1000 10000 get() size=64kb, loop=1000, thread=1
10.
同時アクセス数による速度の違い
Nop LocalMemcached RemoteMemcached InProcessCache 7000ms 5250ms 3500ms 1750ms 0ms 1 10 20 50 100 get() size=64kb, count=10000, loop=1000
11.
同時アクセス数による速度の違い
単位: ms 1 10 20 50 100 Nop 0.518 2.243 0.397 0.406 2.884 LocalMemcachd 454.321 907.012 1582.445 3896.407 6626.150 RemoteMemcachd 664.972 737.439 1168.138 2866.942 5642.771 InProcessCache 5.846 63.923 99.005 168.975 180.256 get() size=64kb, count=10000, loop=1000
12.
実験環境 • Java: In-Memory
CacheはGuavaのCacheBuilderを 使用 • MacBook Pro Retina, Mid 2012 • 2.3 GHz Intel Core i7 • 8 GB 1600 MHz DDR3 • https://github.com/chimerast/cachebench
13.
In-Process Cacheで
できないこと • 本当に大規模なキャッシュ(数TBとか) • セッションオブジェクトの共有 • forkするようなcgiとかphpとか
14.
まとめ • それほんとにmemcachedがマッチして るの? •
メモリなんて最近安いんだから、 APサーバにメモリを64GBでも積んで In-Process Cacheを使えばいいじゃない
Descargar ahora