サクサク読めて、
アプリ限定の機能も多数!
アプリで開く
●はてなブックマークって?
●アプリ・拡張の紹介
●ユーザー登録
●ログイン
●ログアウト
hiroyukim
id:hiroyukim
●
22,621
ブックマーク
●
-
お気に入り
●
-
お気に入られ
タグ
●すべて
●
.NET
(6)
●
AI(5)
●
API
(14)
●
AdventCalendar
(7)
●
Android
(5)
●
AngularJS
(9)
●
C#
(5)
●
CI(9)
●
CRuby
(3)
●
CSS
(6)
●
CentOS
(8)
●
Circuit Breaker
(4)
●
Cookie
(3)
●
C言語
(13)
●
Deep Learning
(6)
●
Distributed
(7)
●
ElasticSearch
(5)
●
Error
(7)
●
FD_SET
(3)
●
Free
(4)
●
GC(22)
●
GDB
(7)
●
GNU
(3)
●
GPGPU
(3)
●
Generator
(4)
●
Groovy
(3)
●
HBase
(5)
●
HTTP
(22)
●
HTTPS
(5)
●
IBM
(10)
●
IPA
(4)
●
IntelliJ IDEA
(14)
●
JIT
(3)
●
Java
(156)
●
Java 8
(4)
●
Java EE
(8)
●
JavaScript
(51)
●
KVS
(3)
●
Linux
(157)
●
Markdown
(23)
●
Microsoft
(3)
●
N-gram
(3)
●
NIO.2
(3)
●
NLP
(5)
●
NUMA
(4)
●
OSS
(6)
●
OpenCV
(3)
●
OpenSSL
(3)
●
PC(4)
●
PDF
(9)
●
Packer
(6)
●
Pandoc
(4)
●
PlantUML
(4)
●
RDB
(4)
●
RDBMS
(7)
●
RFC
(5)
●
RHEL
(3)
●
Raspberry Pi
(7)
●
React
(4)
●
Ruby
(95)
●
Scala
(132)
●
ScalaMatsuri
(3)
●
Socket
(15)
●
System
(3)
●
TLS
(4)
●
Tools
(6)
●
UI(8)
●
UX(6)
●
Ubuntu
(11)
●
Warning
(3)
●
Web
(23)
●
Xanadu
(3)
●
YARN
(3)
●
ab(3)
●
abstract
(3)
●
accept
(4)
●
actor
(7)
●
ag(5)
●
aio
(5)
●
akka
(18)
●
algorithm
(57)
●
algorithms
(6)
●
alloy
(3)
●
amazon
(4)
●
analytics
(3)
●
annotation
(3)
●
ansible
(9)
●
apache
(17)
●
architecture
(10)
●
ast
(3)
●
async
(17)
●
atomic
(5)
●
aws
(7)
●
b-tree
(6)
●
bash
(3)
●
benchmark
(11)
●
binary
(6)
●
blog
(6)
●
book
(20)
●
books
(3)
●
boost
(4)
●
browser
(8)
●
btree
(6)
●
buffer
(4)
●
build
(9)
●
business
(3)
●
c(41)
●
c++
(56)
●
c10k
(3)
●
cache
(7)
●
capistrano
(4)
●
cgroup
(4)
●
cgroups
(3)
●
chain
(3)
●
channel
(3)
●
chef
(10)
●
clang
(3)
●
classfile
(4)
●
client
(4)
●
clojure
(12)
●
code
(7)
●
codereading
(3)
●
coffeescript
(4)
●
collection
(3)
●
commit
(3)
●
common lisp
(5)
●
compiler
(7)
●
computer
(3)
●
concurrency
(21)
●
concurrent
(24)
●
const
(3)
●
constexpr
(3)
●
container
(5)
●
content-security-policy
(3)
●
context
(4)
●
cpan
(4)
●
cpu
(31)
●
crawler
(4)
●
create
(4)
●
daemon
(3)
●
data structure
(4)
●
database
(18)
●
db(15)
●
debug
(21)
●
debugging
(3)
●
deeplearning
(3)
●
design
(4)
●
development
(37)
●
diagram
(4)
●
dispatch
(4)
●
dns
(3)
●
docker
(53)
●
document
(6)
●
documentation
(9)
●
domain
(5)
●
driver
(3)
●
eclipse
(8)
●
ecmascript
(3)
●
editor
(4)
●
education
(7)
●
embulk
(8)
●
emulator
(3)
●
english
(6)
●
epoll
(4)
●
erlang
(20)
●
event
(6)
●
example
(5)
●
file
(9)
●
filesystem
(7)
●
firefox
(3)
●
fluent
(7)
●
fluentd
(24)
●
fork
(20)
●
fpga
(3)
●
framework
(35)
●
functional
(4)
●
future
(6)
●
game
(5)
●
gcc
(6)
●
gem
(7)
●
generics
(3)
●
git
(39)
●
github
(21)
●
gitignore
(3)
●
glibc
(3)
●
go(91)
●
goalng
(3)
●
golang
(181)
●
google
(8)
●
goroutine
(9)
●
graceful
(3)
●
gradle
(3)
●
graph
(7)
●
grpc
(4)
●
guide
(3)
●
h2o
(10)
●
hadoop
(22)
●
hash
(8)
●
haskell
(83)
●
heap
(3)
●
hipchat
(3)
●
hivemall
(3)
●
homebrew
(3)
●
http2
(7)
●
iPhone
(3)
●
ide
(12)
●
image
(3)
●
index
(11)
●
innodb
(13)
●
inotify
(7)
●
install
(11)
●
intellij
(12)
●
interface
(5)
●
io(24)
●
ios
(3)
●
iowait
(5)
●
isatty
(3)
●
isucon
(4)
●
jar
(4)
●
java7
(6)
●
java8
(8)
●
jenkins
(6)
●
join
(3)
●
js(21)
●
json
(16)
●
jubatus
(4)
●
jvm
(41)
●
kafka
(5)
●
kazuho
(10)
●
kernel
(46)
●
kibana
(5)
●
kindle
(3)
●
kosaki
(7)
●
language
(8)
●
leak
(4)
●
library
(19)
●
libuv
(5)
●
license
(3)
●
lisp
(9)
●
listen
(3)
●
llvm
(7)
●
local
(4)
●
lock
(6)
●
lock-free
(5)
●
log
(8)
●
lombok
(5)
●
lua
(4)
●
lxc
(8)
●
mac
(14)
●
machine learning
(12)
●
machinelearning
(13)
●
mackerel
(5)
●
macro
(5)
●
malloc
(6)
●
mapreduce
(3)
●
math
(20)
●
mathematics
(7)
●
matplotlib
(5)
●
mattn
(17)
●
maven
(13)
●
meetup
(3)
●
memcached
(7)
●
memory
(22)
●
metaprogramming
(3)
●
mongodb
(11)
●
monitoring
(17)
●
mruby
(8)
●
multi-thread
(3)
●
mvc
(4)
●
mysql
(87)
●
network
(22)
●
networkx
(5)
●
nginx
(29)
●
node
(22)
●
node.js
(35)
●
non-blocking
(5)
●
norikra
(5)
●
null
(3)
●
numpy
(11)
●
open
(4)
●
oracle
(4)
●
orm
(6)
●
os(11)
●
panic
(4)
●
parallel
(6)
●
parser
(14)
●
pattern
(4)
●
performance
(62)
●
perl
(48)
●
php
(12)
●
plugin
(8)
●
pom
(4)
●
posix
(5)
●
postgresql
(16)
●
prefork
(4)
●
proc
(7)
●
process
(11)
●
processor
(4)
●
profiling
(6)
●
programming
(107)
●
punycode
(6)
●
python
(91)
●
queue
(5)
●
rails
(11)
●
random
(7)
●
reactive
(7)
●
read
(6)
●
recommendation
(4)
●
redis
(5)
●
reference
(4)
●
riak
(7)
●
root
(4)
●
rspec
(6)
●
rss
(4)
●
rust
(19)
●
sample
(4)
●
sbt
(8)
●
schema
(4)
●
scipy
(6)
●
security
(22)
●
selenium
(6)
●
server
(25)
●
set
(4)
●
shell
(6)
●
signal
(4)
●
simd
(7)
●
slide
(28)
●
slideshare
(14)
●
socket.io
(6)
●
software
(20)
●
sort
(10)
●
source
(4)
●
spark
(12)
●
sql
(14)
●
ssh
(7)
●
ssl
(4)
●
stack
(5)
●
stm
(7)
●
study
(4)
●
table
(5)
●
tcp
(9)
●
td(4)
●
tdd
(4)
●
tech
(4)
●
terminal
(4)
●
test
(26)
●
testing
(10)
●
thread
(21)
●
tips
(9)
●
togetter
(5)
●
tool
(17)
●
trie
(8)
●
tty
(4)
●
tuning
(5)
●
tutorial
(13)
●
twitter
(6)
●
uml
(7)
●
unix
(17)
●
v6
(4)
●
vagrant
(7)
●
vim
(39)
●
vimrc
(4)
●
visualization
(6)
●
waf
(4)
●
websocket
(7)
●
webサービス
(4)
●
wiki
(5)
●
windows
(30)
●
x86
(9)
●
xml
(11)
●
あとで読む
(20)
●
がちゃぴん
(9)
●
これはひどい
(4)
●
まとめ
(17)
●
アセンブラ
(4)
●
アルゴリズム
(44)
●
アーキテクチャ
(7)
●
インタビュー
(5)
●
インタプリタ
(4)
●
インデックス
(4)
●
オープンソース
(5)
●
カーネル
(15)
●
グラフ
(6)
●
コマンド
(6)
●
コンパイラ
(13)
●
コードリーディング
(4)
●
スライド
(7)
●
スレッド
(7)
●
セキュリティ
(13)
●
ソフトウェア
(6)
●
ソースコード
(6)
●
チューニング
(20)
●
ツール
(22)
●
テスト
(13)
●
デザインパターン
(8)
●
データベース
(7)
●
データマイニング
(5)
●
データ構造
(7)
●
ドキュメント
(6)
●
ドメイン
(6)
●
ネタ
(4)
●
ネットワーク
(10)
●
パフォーマンス
(12)
●
ファイルシステム
(11)
●
フレームワーク
(5)
●
プログラミング
(19)
●
プロセス
(11)
●
ベンチマーク
(6)
●
マインドマップ
(4)
●
マルチコア
(5)
●
マルチスレッド
(6)
●
メモリ
(16)
●
メモリ管理
(4)
●
モナド
(5)
●
ライブラリ
(17)
●
リスト
(5)
●
並列処理
(11)
●
並行処理
(9)
●
人工知能
(6)
●
仕事
(5)
●
仮想化
(7)
●
作成
(6)
●
入門
(13)
●
処理系
(5)
●
分散
(7)
●
分散処理
(5)
●
勉強
(5)
●
勉強会
(4)
●
可視化
(5)
●
圏論
(6)
●
圧縮
(6)
●
大学
(6)
●
学習
(11)
●
形態素解析
(5)
●
後で読む
(14)
●
技術
(6)
●
教育
(6)
●
数値計算
(5)
●
数学
(21)
●
日本語
(4)
●
最適化
(5)
●
本
(5)
●
構文解析
(4)
●
機械学習
(33)
●
正規表現
(12)
●
比較
(5)
●
監視
(14)
●
研究
(9)
●
統計
(4)
●
線形代数
(4)
●
考え方
(6)
●
脆弱性
(6)
●
自動化
(9)
●
自然言語処理
(10)
●
英語
(13)
●
解析
(6)
●
解説
(4)
●
言語
(5)
●
計算量
(4)
●
設定
(13)
●
設計
(16)
●
読む
(4)
●
読書会
(5)
●
資料
(16)
●
運用
(6)
●
開発
(26)
●
開発環境
(6)
●
関数
(6)
●
関数型プログラミング
(4)
●
非同期
(19)
●
高速化
(10)
●
golang
(181)
●
Linux
(157)
●
Java
(156)
●
Scala
(132)
●
programming
(107)
●
Ruby
(95)
●
go(91)
●
python
(91)
●
mysql
(87)
●
haskell
(83)
関連タグで絞り込む (17)
●
accept
●
HTTP
●
kazuho
●
linux
●
Linux
●
listen
●
network
●
performance
●
queue
●
server
●
Socket
●
starlet
●
SYN Flood
●
System
●
TCP
●
ネットワーク
●
パケット
タグの絞り込みを解除
tcpに関するhiroyukimのブックマーク (11)
●
30 users
●
labs.gree.jp
●テクノロジー
こんにちわ。せじまです。 先日ポチった C302CA が届いたんですが、︵話が長くなるのですごい雑にいうと︶Chromebook の、いろいろ削ぎ落として最適化するという方向性には、とても学ぶところがありました。 昨年末、 MySQLのサーバ集約に取り組んでいるという話をさせていただきましたが、﹁DB集約できてきたので、Webアプリケーションサーバも集約するかー﹂ということで、最近はWebサーバの集約にも取り組んでいます。 ただ、PHPゴリゴリ書いてるのではなく、集約していく上で Linux や TCP 的な観点からチューニングしたほうが良いところを見てまして、そのへんについてあるていどまとまったので、次のスライドを書かせていただきました。
hiroyukim
2017/06/02
●TCP
●performance
●
75 users
●
asnokaze.hatenablog.com
●テクノロジー
TCP Fast Open TCP Fast Openと呼ばれる技術があり、RFC 7413として標準化されている。 このTCP Fast Openを使うと、一度コネクションを貼った相手とは、TCPの3ウェイハンドシェイク中にデータを送受信できるようになる。クライアントからSYNとともにデータを送信することで、実際にデータを送受信開始するまでの待ち時間が短縮できる。 Linuxではすでにクライアント/サーバ両方でTCP Fast Openを使用できる。 TCP Fast Openの闇 しかし、数年前よりこのTCP Fast Openには一部のネットワークで奇妙な振る舞いをすることが知られている。Appleの人が実際にデプロイした時に見つけたもので、IETFやNANOGにて報告されており、その時の資料は下記のとおりである Deploying TCP Fast Open in the wild
hiroyukim
2017/05/13
●network
●TCP
●
132 users
●
veithen.io
●テクノロジー
When an application puts a socket into LISTEN state using the listen syscall, itneeds to specify a backlog for that socket. The backlog is usually described as the limit for the queue of incoming connections. Because of the 3-way handshake used by TCP, an incoming connection goes through an intermediate state SYN RECEIVED before itreaches the ESTABLISHED state and can be returned by the accept s
hiroyukim
2015/06/03
●Socket
●performance
●linux
●listen
●tcp
●queue
●
23 users
●
github.com/robertswiecki
●テクノロジー
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert
hiroyukim
2015/03/16
●network
●tcp
●System
●
53 users
●
blog.kazuhooku.com
●テクノロジー
HTTP/1.1の持続的接続においては、サーバがリクエストを受け取ったあとに異常終了したのか、リクエストを受け取らずに接続を閉じたのか判別することができない。このため、べき等性の保証がないアプリケーションにおいて、リトライを行うべきか否か自動的に判断できなくなる場合がしばしば発生する注。 リトライ可能か否か︵ピアがメッセージの処理を開始した否か︶を判別するには、より細かな情報交換を行う別種のプロトコルを採用しても良いが、複雑なプトロコルはパフォーマンスに悪影響を及ぼす可能性が高いので避けたいところである。 というわけで、以下本題。 pipeliningを行わないHTTP/1.1のような単純なリクエスト/レスポンス型プロトコルをそのままに、アプリケーションレイヤへのリクエスト到達可否を判定する手軽な方法としては、SO_LINGERを用いる方法がある。具体的には、以下のような形式でサーバを実装
hiroyukim
2015/01/15
●HTTP
●kazuho
●tcp
●
4 users
●
learn.microsoft.com
●テクノロジー
Applies To: Windows Server 2012 Data Center Transmission Control Protocol (DCTCP) Data centers host diverse applications, mixing on the same network a variety of workflows that require small, predictable latency, while other applications require large, sustained throughput. In this environment, today’s state-of-the-art Transmission Control Protocol (TCP) congestion control mechanisms do not provid
hiroyukim
2014/09/28
●ネットワーク
●パケット
●tcp
●
26 users
●
kazuhooku.hatenadiary.org
●暮らし
以前 (2.6.31 まで?) は以下の挙動*1。 最初のペイロードを受信するまで SYN_RECV ステート クライアントの ACK (TCP ハンドシェイクの最後のパケット) を受信していたとしても、SYN-ACK を送り続ける 190 秒たったら、サーバ側は TCP 接続確立失敗と認識 クライアントは SYN-ACK を送ってるから接続できてるつもり TCP の仕様的にどうなの、って話はわかる。ただ、IP層はパケットロスの可能性があるわけで、インターネットを使っていて、この挙動で問題があるとしたら、それはアプリケーションのバグだと思うけど。一方で、 LAN 上でパケットロスが (ほぼ) 起こらない前提で作ってたら困ることがあるのかなー。Ubuntuの BTS で話が出てるのは、そういうケース (特定のハードウェアロードバランサと TCP_DEFER_ACCEPT を使う Apac
hiroyukim
2014/05/12
●tcp
●accept
●linux
●server
●
59 users
●
blog.yuryu.jp
●テクノロジー
listen()のbacklogが不足した際のTCP_DEFER_ACCEPTの動作について - blog.nomadscafe.jpという記事の中で、listen backlog があふれた後に accept(2) すると、その後の read(2) が EAGAINを返したり、接続が不安定になるという事象が説明されていました。気になったので調べてみたことをまとめます。 結論から言うとこれはLinuxの仕様です。manのtcp(7)を見ると、 TCP_DEFER_ACCEPT (since Linux 2.4) Allow a listener to be awakened only when data arrives on the socket. Takes an integer value (seconds), this can bound the maximum number of
hiroyukim
2014/05/08
●accept
●tcp
●
24 users
●
ja.wikipedia.org
●テクノロジー
SYN cookies (スィン・クッキーズ) とは、TCP SYN flood攻撃を防ぐために開発された手法のひとつ。1996年、ダニエル・J・バーンスタインらにより考案された。 原理[編集] SYN flood 攻撃の問題点は、TCP 接続が開始する前からサーバがクライアントの SYN パケットによって記憶領域を消費してしまう点にあった。通常この記憶領域には、クライアント側のIPアドレスとポート番号、接続に使うシーケンス番号、およびクライアントが指定してきた TCP接続に関する様々な設定 (TCPウィンドウの大きさなど) が格納される。また、サーバは SYN パケットを受けとった後、クライアントに対して SYN ACK パケットを返す。ここにはその TCP 接続に関連づけられたTCPシーケンス番号が含まれている。TCPシーケンス番号はこれ以降の TCP通信の中で、クライアントおよびサー
hiroyukim
2013/08/14
●tcp
●linux
●SYN Flood
●
8 users
●
www.techrepublic.com
●テクノロジー
Streamlining data transmission is a critical challenge for any enterprise. Thankfully, the TCP/IP protocol provides many ways to optimize data transfer. This article examines several options and shows how they can boost performance. By Alex Kuznetsov, Alex Plant, and Alexander Tormasov Last time, we explained how the TCP_CORK option can decrease the number of packets transferred over a network. Wh
hiroyukim
2013/08/13
●tcp
●Linux
●performance
●
48 users
●
blog.yuuk.io
●テクノロジー
2013/10/22 追記した. Starletのコード読んでてlistening socketにTCP_DEFER_ACCEPTとかいうオプション渡してたので、これ何だって思って調べた. TCPに特に詳しいわけではないので理解に誤りがあるかもしれない. package Starlet::Server; ... # set defer accept if ($^O eq 'linux') { setsockopt($self->{listen_sock}, IPPROTO_TCP, 9, 1) # 9がTCP_DEFER_ACCEPTを表す and $self->{_using_defer_accept} = 1; } ... TCP_DEFER_ACCEPTはLinux 2.4から導入されている. Linux 2.6.32から挙動が若干変わっているらしい. (linux の TCP_DE
hiroyukim
2013/07/22
●Linux
●starlet
●network
●tcp
1
お知らせ
ランキング
今週のはてなブックマーク数ランキング︵2024年7月第2週︶
お知らせ
はてなブックマーク透明性レポート︵2024年2月-2024年4月︶
ランキング
今週のはてなブックマーク数ランキング︵2024年7月第1週︶
もっと読む
公式Twitter
●@HatenaBookmark
リリース、障害情報などのサービスのお知らせ
●@hatebu
最新の人気エントリーの配信
処理を実行中です
キーボードショートカット一覧
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く
●総合
●一般
●世の中
●政治と経済
●暮らし
●学び
●テクノロジー
●エンタメ
●アニメとゲーム
●おもしろ
●アプリ・拡張機能
●開発ブログ
●ヘルプ
●お問い合わせ
●ガイドライン
●利用規約
●プライバシーポリシー
●利用者情報の外部送信について
●ガイドライン
●利用規約
●プライバシーポリシー
●利用者情報の外部送信について
●公式アカウント
●ホットエントリー
●はてなブログ
●はてなブログPro
●人力検索はてな
●はてなブログ タグ
●はてなニュース
●ソレドコ
Copyright © 2005-2024 Hatena. All Rights Reserved.
設定を変更しましたx