高負荷システムのキャッシュに移動します

永遠のトピックの 1 つは、キャッシュの正しい操作です。単純に聞こえますが、実際には多くの落とし穴と機能があります。さて、負荷が来ると、すべてがさらに面白くなります。キャッシュに「銀の弾丸」はありませんが、一連の試行されテストされたテクニックがあります。あとは、タスクに合わせてそれらの組み合わせを選択し、メリットを利用してデメリットを平準化するだけです。





PHP ロシア 2021カンファレンスで、Avito のバックエンド エンジニアである Pavel Parshikov は、「高負荷システムにキャッシュする予定です」というレポートを発表します。そして、このインタビューでは、負荷の点で PHP がプロジェクトの成長に適しているかどうか、および使用するのに適したツールについて話しました。





何かあなた自身について教えてください。職業はなんですか?





私は Avito でエンジニアとして働いています。15年以上、主にバックエンド設計のWeb開発に携わってきました。 





, , . - , , . . . , , , , .





. ? ?





. , , . . , , . . . : , , . 





. - . 





. - , .. , . , — . 





, , .





. , . . , . .





, . , , I- (, Mail.ru ..), , Google Apple. , , , , .





PHP ?





, PHP, . , , PHP. , , RPS, .





. — PHP Go. PHP . PHP, , API (mapi).





PHP . PHP- , . , , - PHP, , PHP. , — highload, - -, , CS'. PHP- , . , , , .





, , PHP . benchmark' . JIT . PHP , . , PHP- , -: , .. .. PHP , . - . .





, , PHP . . . , , , , .. — . , N - . N . 





, , , . PHP . , PHP : event loop, promises, coroutines. , ReactPHP, AMPHP, Swoole. 





HTTP - . PHP curl_multi_exec(), HTTP . Guzzle, .





PHP . , . highload- , .. . , . , DependencyInjection Symfony. 





, API. , , . , , . , PHP7.4 preloading . RoadRunner, .





, PHP - -. , , .. , , , Javascript. PHP , , . PHP , , , time to market .





, ? ? , — ?





, highload- , . — . , , , . , PHP Russia, — . , . 





, . , . , , , (loose coupling). «» . 





, SOLID, . — (DI). , , , . , . (DIC), .





, loose coupling , , by design. API. , API. - , . 





, PHP , — stateless . — «» — , - PHP . , . , . , .





, , , . , , , - , , . , time to market. 





, , , . highload, . , MVP-, , . highload- — - : , bottleneck, .





highload, , . , , . , , . . — , , . .





, , , . , , « », . PHP, , . , zval, « » . , . , . 





, . . . , , . , . , , .





, , . , . - , . observability : , , . «» . , . 





, . 





SRE, . . - . 





PHP Russia?





— , , , . ? PSR' Simple Cache , get, set, delete .. 





, , — , . , , . , - - : , , .. , -. , . -, PHP- — . 





. . , . , , . — . , , . , , () , , .





, . , , . ,   . . Highload- , , : , , .. , , , . 





- , Redis Memcached. , , . , RPS , Memcache PHP, get/set/delete/increment/add. 99% . . .  , ,   .





. , , . - - . , , . — , PHP-! 





highload- . . . , -. , , , . 





PHP , . .





, — ?





, — . - .





, response time, , . , — , , . , . , .





: — , — , — . , . , ? : , , . , ? 





, , — ( ) ( ). -, :  , . . , . HTTP. , , - .





. , . — , , , . 





, . , PHP-, . , , . , ,   . , , !





. , «» . , , . 





, , , « » .





PHP Russia 2021  28   , Radisson Slavyanskaya.     , .





: .     !








All Articles