{ "name": "league/uri", "type": "metapackage", "description" : "URI manipulation library", "keywords": [ "url", "uri", "rfc3986", "rfc3987", "psr-7", "parse_url", "http", "https", "ws", "ftp", "data-uri", "file-uri", "middleware", "parse_str", "query-string", "querystring", "hostname" ], "license": "MIT", "homepage": "http://uri.thephpleague.com", "authors": [ { "name" : "Ignace Nyamagana Butera", "email" : "nyamsprod@gmail.com", "homepage" : "https://nyamsprod.com"基本 URL には、「Protocol://authorization/path?query」のように、モード (またはプロトコル)、サーバー名 (または IP アドレス)、パス、およびファイル名が含まれます。認証部分を含む完全な共通 URI 構文は次のようになります。protocol://username:password@subdomain.domain.domain.topleveldomain:portnumber/directory/filename.filesuffix?parameter=value# Logo
<?php namespace Dflydev\Canal\Analyzer; use Dflydev\Canal\Detector\DefaultDetectorFactory; use Dflydev\Canal\Detector\DetectorInterface; use Dflydev\Canal\InternetMediaType\DefaultInternetMediaTypeParserFactory; use Dflydev\Canal\InternetMediaType\InternetMediaTypeParserInterface; use Dflydev\Canal\Metadata\Metadata; class Analyzer { private $detector; private $internetMediaTypeParser; public function __construct(DetectorInterface $detector = null) { if (null === $detector) { $detector = DefaultDetectorFactory::create(); } $this->detector = $detector; $this->internetMediaTypeParser = DefaultInternetMediaTypeParserFactory::create(); } public function setDetector(DetectorInterface $detector) { $this->detector = $detector; return $this; }インターネット メディア タイプをチェックするための PHP ライブラリは、Web サイトのコーディングを使用して、Web サイトの完全なトラフィック、ユーザー構造、アクセス パス、アクセス コンテンツ、アクセス場所などの重要な指標の詳細な追跡を実現する監視ツールです。実際のトラフィック状況やネットワークユーザーのアクセスエクスペリエンス状況を反映したウェブサイト。
<?php namespace Overtrue\Pinyin; use InvalidArgumentException; define('PINYIN_NONE', 'none'); define('PINYIN_ASCII', 'ascii'); define('PINYIN_UNICODE', 'unicode'); class Pinyin { const NONE = 'none'; const ASCII = 'ascii'; const UNICODE = 'unicode'; protected $punctuations = array( ',' => ',', '。' => '.', '!' => '!', '?' => '?', ':' => ':', '“' => '"', '”' => '"', '‘' => "'", '’' => "'", );馴染みのない漢字の発音が分からなくても心配する必要はもうありません。変換されたピンインはシステム クリップボードに「コピー」できるため、ターゲットのアドレスに貼り付けることができます。複数発音文字のクエリと古典的な複数発音文字の文の収集をサポートしています。発音、すべての単語の発音、またはクリックをサポートしています。特定の単語を発音します。インターフェイスUIはシンプルですっきりしており、ユーザーフレンドリーなエクスペリエンスデザインにより、便利で快適に使用できます。
<?php namespace FastRoute; use PHPUnit\Framework\TestCase; class RouteCollectorTest extends TestCase { public function testShortcuts() { $r = new DummyRouteCollector(); $r->delete('/delete', 'delete'); $r->get('/get', 'get'); $r->head('/head', 'head'); $r->patch('/patch', 'patch'); $r->post('/post', 'post'); $r->put('/put', 'put'); $expected = [ ['DELETE', '/delete', 'delete'], ['GET', '/get', 'get'], ['HEAD', '/head', 'head'], ['PATCH', '/patch', 'patch'], ['POST', '/post', 'post'], ['PUT', '/put', 'put'], ]; $this->assertSame($expected, $r->routes); }ルーティングとは、パケットが送信元から宛先に移動するときにエンドツーエンドのパスを決定するネットワーク全体のプロセスを指します [1]。ルーティングは、OSI 参照モデルの 3 番目の層、つまりネットワーク層のパケット転送デバイスで機能します。ルーターは、データ パケットを転送することでネットワーク相互接続を実装します。ルーターは複数のプロトコル (TCP/IP、IPX/SPX、AppleTalk など) をサポートできますが、我が国のルーターの大部分は TCP/IP プロトコルを実行します。ルーターは通常、IP サブネットまたはポイントツーポイント プロトコルによって識別される 2 つ以上の論理ポートを接続し、少なくとも 1 つの物理ポートを持ちます。ルーターは、受信したデータ パケット内のネットワーク層アドレスとルーター内部で保持しているルーティング テーブルに基づいて出力ポートとネクスト ホップ アドレスを決定し、リンク層のデータ パケット ヘッダーを書き換えてデータ パケットを転送します。ルーターは、現在のネットワーク トポロジを反映するためにルーティング テーブルを動的に維持し、ネットワーク上の他のルーターとルーティングおよびリンク情報を交換することによって、ルーティング テーブルを維持します。
<?php namespace JasonGrimes; class Paginator { const NUM_PLACEHOLDER = '(:num)'; protected $totalItems; protected $numPages; protected $itemsPerPage; protected $currentPage; protected $urlPattern; protected $maxPagesToShow = 10; protected $previousText = 'Previous'; protected $nextText = 'Next'; /** * @param int $totalItems The total number of items. * @param int $itemsPerPage The number of items per page. * @param int $currentPage The current page number. * @param string $urlPattern A URL for each page, with (:num) as a placeholder for the page number. Ex. '/foo/page/(:num)' */ public function __construct($totalItems, $itemsPerPage, $currentPage, $urlPattern = '') { $this->totalItems = $totalItems; $this->itemsPerPage = $itemsPerPage; $this->currentPage = $currentPage; $this->urlPattern = $urlPattern; $this->updateNumPages(); }ページネーションとは、1 ページを 2 ページ以上に分割することです。 モバイル Web フォームのコンテンツを、特定のデバイスに合わせて表示するために小さなページのグループに分割できる自動ページング メカニズムがあります。このメカニズムは、他のページに移動するために使用できるユーザー インターフェイス要素もレンダリングします。 NT サーバーにどれだけのメモリが搭載されていても、常に十分ではありません。物理 RAM が不足すると、Windows NT はページング ファイル Pagefile.sys を使用します。さまざまなプロセスやアプリケーションを実行するために、Pagefile.sys は物理メモリにある程度の領域を割り当てます。これらのスペース内ではデータ ページの交換が許可されます。どうやら、システムがドライブ上のデータを検索するのではなく、ファイル システム キャッシュ内のデータを検索するようにすることで、システムのパフォーマンスが向上するようです。検索操作が多すぎると、プロセッサが停止する可能性があります。これが、「メモリをもっと買え」というフレーズがコンピュータ時代の常套句になった理由の 1 つです。つまり、RAM はあなたの友達です。メモリを管理すると、「友達」の効率が向上します。 Windows NT の Windows タスク マネージャ ([Ctrl][Alt][Delete] | タスク マネージャ) は、メモリ使用量にアクセスするための重要な情報を迅速に提供する表示ツールです。メモリ使用量履歴では、物理メモリのサイズを考慮し、MEM 使用量カウンタの値を計算することにより、メモリ アクティビティの状況を即座に把握できます。 CPU 使用率カウンターおよび CPU 使用率履歴を MEM 使用率カウンターと比較すると、全体的なパフォーマンスを簡単に評価できます。これは、過剰なページングの問題をさらに調査するために Diskperf をすぐに起動するかどうかを決定する必要がある場合に非常に便利です。 Windows NT ページング ファイルは、[コントロール パネル]、[システム]、[パフォーマンス] タブ、[仮想メモリ] から管理できます。ここでは、ページング ファイルのいくつかの設定 (サイズや領域など) を制御できます。もちろん、システムに処理させることもできますが、最適な構成を実現するには、ビジュアル メモリ マネージャー (VMM) を使用することをお勧めします。 Windows NT ページング ファイルの基本原則 Windows NT では、最初に物理 RAM の量に 12MB を追加してページング ファイルの開始サイズを設定します。この 12MB により、システム障害発生時の予防策としてページング ファイルの内容をログにダンプできます。 [停止] ボックスの後にブルー スクリーンが表示された場合は、操作中にこの問題が発生したことになります。開始ページング ファイルのサイズがこの数値 (物理 RAM の量に 12MB を加えたもの) より小さい場合、メモリ不足メッセージが表示され始めます。 Windows NT オペレーティング システムとそのアプリケーションは、約 10MB の RAM を使用します。したがって、この値は物理 RAM の量から差し引く必要があります。これにより、サーバーのメモリ要件を決定する際に十分な余裕が生まれます。 Windows NT では、最小 2MB のページング ファイル サイズが必要です。ページング ファイルが小さすぎるか、まったく存在しない場合は、起動時に警告メッセージが表示されます。 最小 RAM 12 というルールに常に従う必要があります。いかなる状況でも、ページング ファイルをサーバーの RAM のサイズより小さくすることはできません。システムに 32 MB の物理 RAM と 12 MB が搭載されている場合、ページング ファイルの合計サイズは 44 MB になります。明らかに、ページング ファイルは大きいほど良いです。これは、単にページング ファイルのサイズを増やすのではなく、物理 RAM への投資を増やすことを意味します。十分な RAM がないと、ドライブはページング ファイルの読み取りと書き込みに多くの時間を費やします。これはサーバーの速度を低下させるだけであり、I/O リクエストをクリアするためにサーバーを再起動する必要がある場合にはサーバーが動作不能になることさえあります。この理由でマシンを再起動する必要がある場合は、2 回目の再起動が必要になる可能性があります。デフォルトの 12MB の RAM は、必要に応じてページング ファイルの内容をクリアするのに十分です。ページング ファイルが小さいと、保存できる内容が制限され、アプリケーション用に予約されている仮想メモリが使い果たされる可能性があります。十分な RAM がない場合、ページングが増加し、ドライブに余分な負担がかかり、システムの応答性が低下します。この場合、Windows NT では、デバッグ情報をファイルに書き込むことができるように、システム起動時の 1MB の仮想メモリに加えて、ページング ファイルの最小サイズが物理 RAM のサイズと等しい必要があります。前述したように、ページング ファイルの最大サイズと最小サイズは、[仮想メモリ] ダイアログ ボックスで指定します。アプリケーションに応じて、ページング ファイルは拡大または縮小します。システムの実行中は、ページング ファイルを圧縮したり維持したりすることはできません。ただし、ページング ファイルは、Diskeeper などのさまざまなサードパーティ ソフトウェア パッケージを使用して維持できます。
<?php use Sami\Sami; use Sami\Version\GitVersionCollection; $versions = GitVersionCollection::create(dirname(__FILE__) . '/src') ->add('master', 'master branch') ->addFromTags('1.*') ; return new Sami(dirname(__FILE__) . '/src', array('title' => 'Notificato API', 'build_dir' => dirname(__FILE__) . '/../notificato-apidocs/%version%', 'cache_dir' => dirname(__FILE__) . '/../notificato-apidocs/cache/%version%', 'versions' => $versions));いわゆるプッシュ メッセージは「ウェブ ブロードキャスト」です。これは、ユーザーが必要とする情報を特定の技術規格やプロトコルを通じてインターネット上で定期的に送信することで、情報過多を軽減する新しい技術です。プッシュ テクノロジーは、ユーザーに情報を自動的に配信することで、Web の検索にかかる時間を短縮します。ユーザーの興味に基づいて情報を検索およびフィルタリングし、定期的にユーザーにプッシュして、ユーザーが価値のある情報を効率的に発見できるようにします。
<?php require_once dirname(__DIR__) . '/vendor/autoload.php'; call_user_func(function() { $loader = new \Composer\Autoload\ClassLoader(); $loader->add('Purl\Test', __DIR__); $loader->register(); });基本 URL には、「Protocol://authorization/path?query」のように、モード (またはプロトコル)、サーバー名 (または IP アドレス)、パス、およびファイル名が含まれます。認証部分を含む完全な共通 URI 構文は次のようになります。protocol://username:password@subdomain.domain.domain.topleveldomain:portnumber/directory/filename.filesuffix?parameter=value# Logo
<?php require __DIR__ . DIRECTORY_SEPARATOR . ".." . DIRECTORY_SEPARATOR . "vendor" . DIRECTORY_SEPARATOR . "autoload.php"; // import namespaces use Namshi\Notificator\Notification\Handler\Email as EmailHandler; use Namshi\Notificator\Manager; use Namshi\Notificator\Notification; use Namshi\Notificator\Notification\Email\EmailNotificationInterface; use Namshi\Notificator\Notification\Email\EmailNotification; use Namshi\Notificator\NotificationInterface; // create the handler class SimpleEmailHandler extends EmailHandler { public function handle(NotificationInterface $notification) { $to = implode(',', $notification->getRecipientAddresses()); mail($to, $notification->subject, $notification->body); } }軽量フレームワークは、重量フレームワークと比較したプログラミング パターンです。重量のあるフレームワークと比較すると、問題解決の焦点が異なります。 軽量フレームワークを使用する理由は、開発に可能な限り POJO ベースのメソッドが使用されるため、アプリケーションがコンテナに依存せず、開発効率を向上させることができるためです。一方、ほとんどの軽量フレームワークはオープン ソース プロジェクトであり、オープン ソース コミュニティは、優れた設計と多くの迅速な構築ツール、および参照用の既製のオープン ソース コードを多数提供しており、迅速なフレームワークの構築に役立ちます。プロジェクトの開発。たとえば、Tomcat Spring Hibernate は、J2EE 中小企業アプリケーションを開発する際に、多くの開発者が好むアーキテクチャの選択肢となっています。
キャッシュとは高速なデータ交換が可能なメモリのことで、メモリよりも先にCPUとデータのやり取りを行うため、非常に高速です。 L1 キャッシュ (レベル 1 キャッシュ) は、CPU の 1 次キャッシュです。内蔵L1キャッシュの容量と構造はCPUの性能に大きく影響しますが、キャッシュメモリはスタティックRAMで構成され複雑な構造となっており、CPUのダイ領域をあまり大きくできない場合は容量が大きくなります。 L1 キャッシュが十分ではありません。大きくしすぎた可能性があります。一般に、L1 キャッシュの容量は 32 ~ 256KB が一般的です。 L2 キャッシュ (二次キャッシュ) は、CPU の二次キャッシュであり、内部チップと外部チップに分かれています。内部オンチップ L2 キャッシュはメイン周波数と同じ速度で動作しますが、外部 L2 キャッシュはメイン周波数の半分でのみ動作します。 L2 キャッシュ容量も CPU のパフォーマンスに影響します。原則として、大きいほど良いです。通常のデスクトップ CPU の L2 キャッシュは、一般に 128KB ~ 2MB 以上です。ノートブック、サーバー、ワークステーションで使用される CPU の L2 キャッシュは、最大 1MB ~ 3MB までです。 キャッシュはメモリ内の少量のデータのコピーにすぎないため、CPU がキャッシュ内のデータを探しても、見つからない可能性があります (データはメモリからメモリにコピーされないため)。この時点でも、CPU はデータを見つけるためにメモリにアクセスするため、システムの速度が低下しますが、CPU はデータをキャッシュにコピーするため、次回はデータをメモリから取得する必要がなくなります。時間の変化に伴い、最も頻繁にアクセスされたデータは静的なものではなくなります。つまり、先ほどまで頻繁にアクセスされなかったデータは、今では頻繁にアクセスされる必要があります。キャッシュ内のデータが最も頻繁にアクセスされるようにするには、キャッシュ内のデータを特定のアルゴリズムに従って頻繁に置き換える必要があると言われています。 rreeee
リーリー##1。キャッシュをクリアして更新するときは、すべてを破棄するのではなく、更新の影響を受けるオブジェクトをできるだけ正確に操作するようにしてください。 Hibernate では、sessionFactory.evict(class, id) などのキャッシュ オブジェクトをクリアするきめ細かいメソッドも提供します。 sessionFactory.evice(class) の動作は、このような動作が頻繁に行われるかどうかに依存し、頻繁に行われるとキャッシュの効果が大幅に低下します。 ####2.キャッシュされたオブジェクトが多すぎる場合は、無効化アルゴリズムと処理をビジネス オブジェクトの特性と密接に組み合わせる必要があり、オブジェクトの無効化はイベントによって駆動される必要があります。 ####3.商用オブジェクトをキャッシュするには、オブジェクトのライフサイクルとビジネス特性を深く分析する必要があります。 ####4.データ不整合のリスクを十分に理解し、予防策を講じる必要があります。 ####5.注文オブジェクトのサイズを合理的に見積もり、十分なメモリを割り当てます 6.中央キャッシュのみを使用すると、データベースへの負荷を軽減することしかできません。依然としてネットワーク帯域幅への負荷があり、速度はローカル キャッシュの効果に比べてはるかに劣ります。したがって、ローカル キャッシュ + 中央キャッシュの戦略は、適切である必要があります。つまり、速度を向上させ、クラスターのレプリケーション中のボトルネックを回避するために、これらを組み合わせることができます。
<?php namespace Doctrine\Common\Cache; class ApcCache extends CacheProvider { protected function doFetch($id) { return apc_fetch($id); } protected function doContains($id) { return apc_exists($id); } protected function doSave($id, $data, $lifeTime = 0) { return apc_store($id, $data, $lifeTime); } protected function doDelete($id) { // apc_delete returns false if the id does not exist return apc_delete($id) || ! apc_exists($id); } protected function doFlush() { return apc_clear_cache() && apc_clear_cache('user'); } protected function doFetchMultiple(array $keys) { return apc_fetch($keys) ?: []; } protected function doSaveMultiple(array $keysAndValues, $lifetime = 0) { $result = apc_store($keysAndValues, null, $lifetime); return empty($result); }キャッシュとは高速なデータ交換が可能なメモリのことで、メモリよりも先にCPUとデータのやり取りを行うため、非常に高速です。 L1 キャッシュ (レベル 1 キャッシュ) は、CPU の 1 次キャッシュです。内蔵L1キャッシュの容量と構造はCPUの性能に大きく影響しますが、キャッシュメモリはスタティックRAMで構成され複雑な構造となっており、CPUのダイ領域をあまり大きくできない場合は容量が大きくなります。 L1 キャッシュが十分ではありません。大きくしすぎた可能性があります。一般に、L1 キャッシュの容量は 32 ~ 256KB が一般的です。 L2 キャッシュ (二次キャッシュ) は、CPU の二次キャッシュであり、内部チップと外部チップに分かれています。内部オンチップ L2 キャッシュはメイン周波数と同じ速度で動作しますが、外部 L2 キャッシュはメイン周波数の半分でのみ動作します。 L2 キャッシュ容量も CPU のパフォーマンスに影響します。原則として、大きいほど良いです。通常のデスクトップ CPU の L2 キャッシュは、一般に 128KB ~ 2MB 以上です。ノートブック、サーバー、ワークステーションで使用される CPU の L2 キャッシュは、最大 1MB ~ 3MB までです。 キャッシュはメモリ内の少量のデータのコピーにすぎないため、CPU がキャッシュ内のデータを探しても、見つからない可能性があります (データはメモリからメモリにコピーされないため)。この時点でも、CPU はデータを見つけるためにメモリにアクセスするため、システムの速度が低下しますが、CPU はデータをキャッシュにコピーするため、次回はデータをメモリから取得する必要がなくなります。時間の変化に伴い、最も頻繁にアクセスされたデータは静的なものではなくなります。つまり、先ほどまで頻繁にアクセスされなかったデータは、今では頻繁にアクセスされる必要があります。キャッシュ内のデータが最も頻繁にアクセスされるようにするには、キャッシュ内のデータを特定のアルゴリズムに従って頻繁に置き換える必要があると言われています。
iso、国際標準の光ディスク ファイル システム フォーマット。 ISO 9660 標準に準拠したディスク イメージ ファイル形式。通常、ファイル拡張子は iso です。この種のファイルは、単純にディスク上のすべての情報をコピーして作成されたイメージ ファイルとして理解できます。 ZIP は、以前は Deflate (真空) として知られていたファイル圧縮アルゴリズムです。発明者は Phil Katz (Phil Katz) で、1989 年 1 月に形式情報を発表しました。 ZIP は通常、拡張子「.zip」を使用し、その MIME 形式は application/zip です。現在、ZIP 形式はいくつかの主流の圧縮形式の 1 つであり、その競合には RAR 形式やオープン ソースの 7-Zip 形式などがあります。パフォーマンスを比較すると、RAR 形式は ZIP 形式よりも圧縮率が高くなりますが、圧縮時間は Zip よりもはるかに長くなります。 7-Zip (7z) は無料の圧縮ツールを提供するため、徐々に多くの分野で使用されています。 rreeee