Where to place your server for maximum speed? In addition to the time it takes for the servers to respond to requests, it just takes time to get the package from point A to point B.
, -. , , , .
: «» ( CDN), «» , API-, . / 200 , 4G 300–400 . , 40 /, TLS, CDN 40 . « » - ( «» CDN).
, . API- 1 , , API- — , 130 .
130 . , , . - : — DNS, — TCP-, — TLS, , , — , .
( ) DNS, TCP TLS, , API- , - .
, 130 — , API- . — , , — .
«»
, « » : « » , , « ethernet» ( «100 » ).
«» . , , . « » , . . .
API-, CDN
, , — (Content Distribution Network, CDN). , , - . . 50 . 60 %. CSS-, JavaScript, . . , . API-, , .
CDN. , , . . , , . , ?
:
, - . 143 . IP-. ( 10 % ).
GeoIP Maxmind IP- .
WonderNetwork - 240 .
(, ) Geonames, .
Postgres PostGIS .
( ) , 200 .
: , , . :
(«P50»);
(«P75»);
99 % («P99»).
.
.
City |
p50 |
p75 |
p99 |
---|---|---|---|
Manhattan |
74 |
97 |
238 |
Detroit |
89 |
115 |
245 |
Secaucus |
71 |
96 |
246 |
Piscataway |
75 |
98 |
251 |
Washington |
82 |
105 |
253 |
Chicago |
90 |
121 |
253 |
Kansas City |
98 |
130 |
254 |
Indianapolis |
96 |
125 |
254 |
St Louis |
96 |
127 |
256 |
Cincinnati |
92 |
121 |
257 |
Houston |
104 |
134 |
257 |
Syracuse |
77 |
102 |
257 |
Scranton |
78 |
103 |
258 |
Quebec City |
83 |
113 |
259 |
South Bend |
92 |
118 |
259 |
Montreal |
83 |
104 |
259 |
Charlotte |
91 |
110 |
259 |
Salem |
74 |
98 |
259 |
Buffalo |
80 |
111 |
259 |
Albany |
75 |
100 |
260 |
Monticello |
94 |
123 |
260 |
Baltimore |
80 |
105 |
260 |
Asheville |
95 |
118 |
260 |
New York |
77 |
103 |
261 |
Berkeley Springs |
84 |
112 |
261 |
Minneapolis |
102 |
133 |
261 |
Barcelona |
102 |
148 |
261 |
Dallas |
112 |
140 |
262 |
Des Moines |
104 |
131 |
262 |
San Jose |
139 |
165 |
263 |
Brunswick |
77 |
101 |
264 |
Atlanta |
88 |
113 |
264 |
San Francisco |
136 |
168 |
264 |
Halifax |
80 |
102 |
265 |
Philadelphia |
77 |
100 |
266 |
Basel |
97 |
146 |
267 |
Green Bay |
103 |
131 |
267 |
Pittsburgh |
88 |
117 |
267 |
Bern |
99 |
147 |
267 |
Denver |
112 |
141 |
267 |
Miami |
103 |
129 |
267 |
Raleigh |
88 |
111 |
268 |
Knoxville |
114 |
135 |
268 |
Boston |
77 |
105 |
268 |
Valencia |
108 |
148 |
268 |
Jackson |
105 |
132 |
268 |
Memphis |
101 |
131 |
268 |
Jacksonville |
95 |
122 |
268 |
Madrid |
95 |
138 |
268 |
London |
76 |
130 |
268 |
San Diego |
138 |
162 |
269 |
San Antonio |
112 |
138 |
269 |
Salt Lake City |
120 |
151 |
269 |
Toronto |
87 |
111 |
269 |
Cleveland |
97 |
122 |
269 |
Austin |
113 |
141 |
270 |
Colorado Springs |
110 |
136 |
270 |
Orlando |
103 |
126 |
270 |
Antwerp |
93 |
137 |
271 |
Oklahoma City |
114 |
147 |
271 |
Saskatoon |
115 |
140 |
272 |
Lansing |
98 |
127 |
272 |
Seattle |
141 |
164 |
272 |
Columbus |
92 |
120 |
273 |
Bristol |
76 |
129 |
274 |
Tampa |
104 |
130 |
274 |
Lausanne |
95 |
139 |
274 |
Ottawa |
85 |
111 |
274 |
Falkenstein |
91 |
137 |
275 |
Maidstone |
76 |
129 |
275 |
Paris |
80 |
129 |
275 |
Toledo |
102 |
129 |
275 |
Savannah |
117 |
146 |
276 |
The Hague |
82 |
138 |
276 |
Liege |
87 |
136 |
277 |
Lincoln |
100 |
124 |
277 |
New Orleans |
115 |
142 |
278 |
Amsterdam |
82 |
140 |
278 |
Las Vegas |
136 |
163 |
279 |
Vienna |
102 |
149 |
279 |
Coventry |
80 |
132 |
279 |
Cromwell |
80 |
106 |
280 |
Arezzo |
109 |
160 |
280 |
Cheltenham |
79 |
131 |
280 |
Sacramento |
137 |
167 |
280 |
Alblasserdam |
82 |
137 |
281 |
Vancouver |
142 |
165 |
281 |
Fremont |
131 |
157 |
283 |
Gosport |
76 |
137 |
284 |
Frankfurt |
93 |
136 |
284 |
Carlow |
88 |
136 |
285 |
Phoenix |
128 |
153 |
285 |
Portland |
132 |
159 |
285 |
Cardiff |
78 |
131 |
285 |
Luxembourg |
87 |
137 |
285 |
Bruges |
83 |
135 |
285 |
Eindhoven |
85 |
133 |
285 |
Groningen |
87 |
139 |
286 |
Manchester |
80 |
137 |
286 |
Brussels |
90 |
139 |
287 |
Brno |
106 |
148 |
287 |
Edinburgh |
84 |
136 |
287 |
Nuremberg |
89 |
136 |
288 |
Albuquerque |
125 |
159 |
289 |
Los Angeles |
141 |
164 |
289 |
Ljubljana |
110 |
152 |
289 |
Lugano |
97 |
147 |
290 |
Zurich |
103 |
146 |
290 |
Dronten |
84 |
133 |
290 |
Newcastle |
87 |
147 |
290 |
Rome |
96 |
147 |
291 |
Dusseldorf |
90 |
140 |
291 |
Munich |
98 |
144 |
291 |
Venice |
106 |
156 |
292 |
Edmonton |
139 |
165 |
292 |
Copenhagen |
96 |
145 |
292 |
St Petersburg |
113 |
163 |
293 |
Dublin |
85 |
143 |
293 |
Redding |
142 |
178 |
293 |
Vilnius |
110 |
162 |
293 |
Belfast |
79 |
125 |
294 |
Nis |
113 |
158 |
294 |
Douglas |
87 |
143 |
294 |
Rotterdam |
82 |
139 |
295 |
Bergen |
107 |
157 |
295 |
Strasbourg |
89 |
141 |
295 |
Roseburg |
148 |
172 |
296 |
Graz |
104 |
147 |
296 |
San Juan |
117 |
141 |
298 |
Warsaw |
108 |
161 |
299 |
Frosinone |
105 |
153 |
299 |
Riyadh |
159 |
206 |
300 |
Prague |
103 |
152 |
301 |
Ktis |
102 |
158 |
302 |
Mexico |
139 |
164 |
302 |
Belgrade |
113 |
160 |
302 |
Guadalajara |
128 |
155 |
303 |
Milan |
96 |
146 |
305 |
Bratislava |
102 |
154 |
306 |
Osaka |
181 |
240 |
307 |
Zagreb |
103 |
150 |
308 |
Tallinn |
108 |
162 |
308 |
Helsinki |
105 |
156 |
308 |
Hamburg |
127 |
166 |
309 |
Oslo |
98 |
153 |
311 |
Bucharest |
120 |
162 |
311 |
Riga |
113 |
159 |
312 |
Panama |
150 |
177 |
313 |
Tokyo |
188 |
238 |
313 |
Kiev |
119 |
168 |
313 |
Stockholm |
102 |
153 |
314 |
Budapest |
110 |
162 |
314 |
Kharkiv |
128 |
169 |
315 |
Gothenburg |
115 |
167 |
316 |
Pristina |
122 |
167 |
316 |
Tirana |
128 |
184 |
316 |
Geneva |
96 |
142 |
316 |
Siauliai |
113 |
163 |
317 |
Cairo |
133 |
182 |
318 |
Sapporo |
196 |
255 |
318 |
Bogota |
170 |
188 |
319 |
Palermo |
119 |
183 |
320 |
Gdansk |
107 |
152 |
320 |
Caracas |
149 |
176 |
320 |
Sofia |
114 |
161 |
321 |
Westpoort |
79 |
134 |
321 |
Honolulu |
173 |
196 |
321 |
Roubaix |
102 |
157 |
321 |
Kazan |
138 |
190 |
322 |
Winnipeg |
169 |
190 |
322 |
Varna |
120 |
173 |
322 |
Tel Aviv |
138 |
194 |
322 |
Lisbon |
115 |
166 |
324 |
Jerusalem |
145 |
198 |
324 |
Ankara |
139 |
195 |
327 |
Heredia |
164 |
188 |
327 |
Athens |
128 |
183 |
329 |
Reykjavik |
127 |
180 |
329 |
Paramaribo |
166 |
194 |
330 |
Algiers |
120 |
173 |
332 |
Chisinau |
127 |
180 |
333 |
Bursa |
135 |
188 |
334 |
Thessaloniki |
134 |
187 |
336 |
Limassol |
141 |
186 |
337 |
Lyon |
95 |
145 |
340 |
Mumbai |
204 |
248 |
340 |
Medellin |
163 |
186 |
344 |
Valletta |
120 |
176 |
345 |
Baku |
160 |
205 |
346 |
Melbourne |
227 |
269 |
346 |
Fez |
149 |
198 |
348 |
Tunis |
124 |
180 |
348 |
Koto |
217 |
254 |
348 |
Dubai |
192 |
243 |
350 |
Tbilisi |
153 |
208 |
351 |
Malaysia |
195 |
235 |
352 |
Hyderabad |
214 |
260 |
354 |
Bangalore |
212 |
252 |
355 |
Izmir |
137 |
187 |
357 |
Adelaide |
241 |
272 |
359 |
Chennai |
221 |
248 |
359 |
Moscow |
127 |
172 |
359 |
Lahore |
217 |
270 |
361 |
Novosibirsk |
163 |
206 |
362 |
Sydney |
237 |
272 |
363 |
Karaganda |
180 |
231 |
363 |
Vladivostok |
223 |
264 |
364 |
Taipei |
265 |
293 |
364 |
Lima |
169 |
199 |
364 |
Istanbul |
135 |
182 |
366 |
Hong Kong |
199 |
223 |
366 |
Auckland |
244 |
291 |
367 |
Jakarta |
207 |
245 |
368 |
Seoul |
231 |
277 |
371 |
Beirut |
136 |
195 |
372 |
Accra |
168 |
216 |
373 |
Singapore |
190 |
246 |
374 |
Sao Paulo |
193 |
213 |
375 |
Joao Pessoa |
182 |
220 |
378 |
Perth |
243 |
267 |
379 |
Ho Chi Minh City |
253 |
287 |
380 |
Wellington |
251 |
295 |
383 |
Brasilia |
226 |
249 |
384 |
Manila |
251 |
281 |
385 |
Pune |
202 |
251 |
386 |
Dhaka |
231 |
268 |
386 |
Phnom Penh |
243 |
267 |
386 |
Santiago |
202 |
230 |
390 |
Lagos |
191 |
233 |
391 |
Quito |
162 |
188 |
392 |
New Delhi |
230 |
264 |
395 |
Johannesburg |
237 |
283 |
398 |
Bangkok |
222 |
254 |
401 |
Canberra |
262 |
295 |
402 |
Dar es Salaam |
214 |
267 |
407 |
Dagupan |
239 |
268 |
408 |
Christchurch |
257 |
309 |
409 |
Hanoi |
235 |
264 |
415 |
Cape Town |
216 |
262 |
417 |
Buenos Aires |
232 |
253 |
417 |
Guatemala |
217 |
249 |
418 |
Brisbane |
261 |
288 |
422 |
Indore |
304 |
352 |
457 |
Zhangjiakou |
236 |
264 |
457 |
Nairobi |
233 |
277 |
468 |
Kampala |
244 |
287 |
480 |
Hangzhou |
239 |
267 |
517 |
Shenzhen |
242 |
275 |
523 |
Shanghai |
300 |
367 |
551 |
Montevideo |
738 |
775 |
902 |
csv-, .
: — , —
. , , , , , ( ), / , . , , — . : - - P99, , P50 P99, .
, -, , , — , .
. , . , . - - , : 75, 105 , 30 %. , , , . , - - , .
, CDN. : CDN (~40 ) (71 ).
, . 5 . . — :
|
() |
|
|
|
- |
5 585 |
71 |
37 |
1,9 |
|
10 160 |
162 |
68 |
2,4 |
|
11 719 |
194 |
78 |
2,5 |
|
3 513 |
60 |
23 |
2,6 |
- |
2 105 |
38 |
14 |
2,7 |
|
8 041 |
144 |
54 |
2,7 |
|
8 500 |
160 |
57 |
2,8 |
- |
11 103 |
220 |
74 |
3,0 |
|
5 006 |
99 |
33 |
3,0 |
|
2 508 |
51 |
17 |
3,0 |
- |
9 473 |
193 |
63 |
3,1 |
|
9 543 |
213 |
64 |
3,3 |
|
9 644 |
221 |
64 |
3,4 |
|
2 504 |
60 |
17 |
3,6 |
|
6 298 |
151 |
42 |
3,6 |
|
9 582 |
239 |
64 |
3,7 |
|
9 237 |
232 |
62 |
3,8 |
|
9 217 |
241 |
61 |
3,9 |
Mumbai |
7 200 |
190 |
48 |
4,0 |
|
9 800 |
268 |
65 |
4,1 |
|
8 017 |
229 |
53 |
4,3 |
|
8 880 |
269 |
59 |
4,5 |
, - 2 , , , : 4 . , - . , , , , . .
, , . TLS 1.3 , HTTP3 HTTP TLS. , : — DNS, - — , , , — .
, , HTTP3, (bundling) JavaScript/CSS. : HTTP/3 , JavaScript CSS. , , .
, , — , , , — , « ».
-, GeoIP IP-. (. ., , ) 1000 , , 132 276 . , , .
, WonderNetwork, (30 2020 ) . «».
WonderNetwork , . — ( ). - , . , - : 140 , 50 . . ( ), . , ICMP- ?
, . Excel ( Excel github, ). , .
, , , . - . , , — , . 9 , , 31 . . — . , . - . . 4G 100 , , , , .
( 0,03 ), , , , IP- : , , .
: ? , , - . , , , , , .
- -, , .
, ( ), .
. 100 . , .
. .
. (CORS). , , «» HTTP-, JavaScript. URL- OPTIONS. . , , , : , POST- JSON (, api.foo.com foo.com) -. CORS- HTTP-, .
« », JavaScript (, CDN), (, ) API- , , . , , , . , , HTML- API-. API- , .
, - — , ?! , , Google , , , . « » (-, « -»). , Google (SEO).
,
. , . , .
100 , - .
APNIC CDN , 40 . , , , CDN , , , , .
, «», , 1 , , 512. , ( , ). , . , (130 5 ), , .
. : ( 170 . ) 8 , , . ( 26 . ) . , , , .
, , Github. , , . , , : , « ».