[AWS Expert Online for JAWS-UG]AWS SAW を使った�トラブルシューティング�効率化のススメ
![サーバーとは何かを理解して、コンテナ1つで実行しよう | PHPerKaigi2024](https://cdn-ak-scissors.b.st-hatena.com/image/square/9db16b19486c3e778faa7f267d7021e188f0d3ec/height=288;version=1;width=512/https%3A%2F%2Ffiles.speakerdeck.com%2Fpresentations%2F482c7e00317c46c7ba50c5928c6f7a6f%2Fslide_0.jpg%3F29258330)
クラシマです。 社内向け管理画面のMadrasのPHPバージョンを7.4から8.0へメジャーバージョンアップしました。 苦労話を共有させてください。 PHP7.4->8.0移行計画 まず、ドキュメントを書きました。 これにより、なんでこれをやってるんだっけ、ということを明確にします。 esa 公式ドキュメントを熟読します。 下位互換性のない変更点 ↓こんな移行作戦を立てました。 ローカル開発用のDocker環境がPHP8.0で動くようにする ローカルでのテストが全部通るようにする CI用のDockerイメージをPHP8.0でも作って、手動でCIを回してテストが全部通るようにする 通常のCIはPHP7.4で動作させておき、本番deploy後にPHP8.0イメージでCIを回す stg環境にPHP8.0を導入して動作検証する 本番移行手順を作る 本番移行する ポイント PHP7.4とPHP8.0
皆さんこんにちは。 異種の技術や技を組み合わせることで、新しくて強力なものに昇華させるというのは古来からあるものです。 空手道とブーメランを組み合わせたやつを思い浮かべていただければこれはもう自明の理です。 そんな一定年齢層の人にしか刺さらないような前置きをしつつ、PHPとGoを組み合わせたというフレームワークSpiralを、awesomeで見かけちゃったので、試してみますね。 Spiral 特徴 とりあえず、公式サイトから丸パクリしてきた特徴を見てみましょう。適当翻訳を下に置いてます。 High-performance HTTP, HTTP/2 server based on RoadRunner RoadRunnerをもとに作られた高速HTTP, HTTP/2 サーバ Console commands via Symfony/Console Symfony/Consoleを使ったコンソ
What's new in PHP 8.1 PHP 8.1 was released on November 25, 2021. It's currently the latest PHP version. In this post, we'll go through all features, performance improvements, changes and deprecations one by one. # New features As with every release, PHP 8.1 adds some nice new features. Keep in mind that this list will grow over the year. # Enums RFC Enums will be added in PHP 8.1! If you're unsure
交差型は何かって一言で言うと型のANDです。 PHP8.0で型のORことUNION型が導入されましたが、これに続いてPHP8.1で交差型が導入されることになりました。 これでPHPでも型パズルマウント取れるようになりますね。 ということで以下はPure intersection typesの紹介です。 PHP RFC: Pure intersection types Introduction 交差型とは、型がひとつの制約ではなく、複数の制約を同時に満たすことを必要とする型です。 交差型は、現在のところ言語ネイティブには対応していません。 かわりにphpdocアノテーションを使用したり、型付きプロパティを濫用したりしています。 class Test { private ?Traversable $traversable = null; private ?Countable $countabl
PHPとPythonとRubyの連想配列のデータ構造がそれぞれ4〜5年ほど前に見直され、ベンチマークテストによっては倍以上速くなったということがありました。具体的には以下のバージョンで実装の大変更がありました。 PHP 7.0.0 HashTable高速化 (2015/11) Python 3.6.0 dictobject高速化 (2016/12) Ruby 2.4.0 st_table高速化 (2016/12) これらのデータ構造はユーザーの利用する連想配列だけでなく言語のコアでも利用されているので、言語全体の性能改善に貢献しています1。 スクリプト言語3つが同時期に同じデータ構造の改善に取り組んだだけでも面白い現象ですが、さらに面白いことに各実装の方針は非常に似ています。独立に改善に取り組んだのに同じ結論に至ったとすれば興味深い偶然と言えるでしょう2。 本稿では3言語の連想配列の従来実
$user = null; echo $user->address->country ?? ''; PHPのプロパティは元よりnull安全なので、存在しないプロパティだろうがnullだろうがプリミティブ型だろうがいきなりプロパティを取り出せます。 取れない場合はE_NOTICEが発生しますが、??を使えば黙殺できます。 しかしメソッドはだめです。 echo $user->getAddress()->getCountry() ?? ''; // Fatal error: Call to a member function getAddress() // 1 if (method_exists($user, 'getAddress')) { if (method_exists($user->getAddress(), 'getCountry')) { echo $user->getAddres
PHP 8から、PHPは「PHP」と「P++」という2つの言語を提供するようになる というキャッチーな紹介をするP++: 静的型付けをめざすPHPという記事がそれなりに話題になり、このニュースは目覚しく革新的な内容で、多くのひとの目を引き付けました。 これは早まった理解であり、ほとんど誤報と言ってもいい内容でした。2019年8月15日には提案者本人も、少くとも「P++」の計画を短期的に実現するととは非現実的であり時期尚早であることを認めています。 この記事では、PHP開発の現状、なぜ野心的なP++計画が提案され、事実上撤回されたかの経緯について紹介します。 [中立性のための表示] この記事の著者@tadsanはPHPの静的解析を強く推進する立場です。 PHPゆるふわCI入門 PHP型検査・夢と理想と現実) 三行で要約 PHPはバージョンを経るごとに「歴史的経緯」による負債が削ぎ落されてきた
僕の周りだけかもしれないですが、国内のWeb受託開発案件は「PHPで作るのが暗黙のルール」ってな勢いでPHP案件ばっかりなのですが、Python大好きな僕としては、何としてでもPythonを使って仕事をしたい! なので頑張って布教活動をしているのですが、中々良い手応えが得られないのが現状です。。 という訳で、改めてPythonを使うメリットとか、安心してクライアントにPythonを進められる理由なんかをまとめてみました。 技術者がPythonを使うメリット 「今までPHPでやってきて何の問題もなかったし、これからPython始める意味なんてあんの?」 ぶっちゃけ、そんなにないですw 結果的に出来上がる物に関しては大差ないですからね。 ただし、開発効率やメンテナンス性は飛躍的に上がると僕は思います。 ライブラリがとても豊富 PHPも沢山ライブラリありますけど、Pythonだっていっぱいあるん
Facebookは同社がオープンソースで開発しているPHP用のJITコンパイラの最新版「HHVM 2.2.0」(HipHop Virtual Machine for PHP)の公開を発表しました。 HHVMはPHPのコードをダイナミックにバイナリコードへと変換することで、高速な実行の実現を目指しています。 HHVM 2.2では、主要なLinuxディストリビューションとして、Ubuntu 12.04/ 13.04/13.10、Mint 15、Debian 7、Fedora 19のそれぞれに対応したパッケージが用意されるようになりました。 性能面では前バージョンに比べてCPUの利用率が17%低下し、効率が向上しているとのこと。 新機能として、Pharファイル対応、php.ini対応、多くのSPLクラスの追加と修正、ArrayObjectとArrayIteratorのバグ修正など。また、Symf
メリークリスマス! PHP Advent Calendarもいよいよ24日目に突入です。 昨日はxhprofについてでしたね。僕もパフォーマンスチューニングの際に使っています。手軽に利用できるのでお勧めです。 さて、このエントリーでは表題の通りMVCについて書かせていただきます。これは、PHPカンファレンス2012&WordCamp Tokyo2012合同LT大会で発表した「やはりお前らのMVCは間違っている」で煽るだけだったこの問題をきちんと解説するものです。 この発表資料を公開するとPHPの枠を超えて広く閲覧いただき*1、また多くの方から突っ込みを戴きました。「LTだから」と言って逃げていた回答をして、気持ち新たに新年を迎えようと思います。 MVCとはなんなのか 間違いを指摘する前にMVCがそもそもどういうアーキテクチャであるのかを確認しなければいけません。 MVCは1970年代にパロ
改名なのかフォークなのか、とにかくHudsonプロジェクトはHudsonとJenkinsに分かれました。(開発者はフォークではなく改名と主張していて、この辺りの話はinfoQが詳しいようです。http://www.infoq.com/jp/hudson ) ※前回の記事で紹介したphp-hudson-template はphp-jenkins-template に変わっています。 またPHPUnitで有名なSebastian氏がbuld.xmlを自動で作成してくれるPPW (PHP Project Wizard )というツールをリリースして、面倒だったプロジェクトの設定ファイルbuld.xmlの作成がとても簡単になりました。 Sebastian氏はhttp://jenkins-php.org/というPHPでJenkinsを使うためのガイドをするサイトも用意しています。以下はその補足です。
# useradd -s /sbin/nologin -d /usr/local/nginx -m nginx ← nginx用ユーザの作成 # yum install gcc openssl-devel pcre pcre-devel zlib-devel ← コンパイルの為インストール # wget http://nginx.org/download/nginx-1.1.11.tar.gz # tar zxvf nginx-1.1.11.tar.gz # cd nginx-1.1.11 # ./configure --user=nginx --group=nginx --with-pcre --with-http_ssl_module # make # make install # vi /etc/init.d/nginx #!/bin/sh # nginx - this script
Title : PHPのチューニングネタ 和訳的なメモ Posted on : 2006-11-25 Author : NKJG Category : Webメモ Permalink : PHPのチューニングネタ 和訳的なメモ Hatena Star : 本文 12のPHP最適化テクニック:phpspot開発日誌が参照にしている、12 PHP optimization tips - Alex Moskalyuk Blogからリンクされている、Ilia Alshanetsky (Ilia Alshanetsky - Talks)氏のPHP & Performance、PHPのチューニングの部分のみ読んだ、つもり。英語ダメなんで。 以下PHPのチューニングに関する部分のみのまとめ的なもの。私的なメモ。誤訳の可能性を考えると信頼はしないほうがよさげ。私以外の人は原文を読むべ
FPDFでPDFにセキュリティを付ける方法のメモです。 FPDF本家サイトのScriptにProtectionというスクリプトがあるので、それをダウンロード。 MBFPDFと併用する場合の、mbfpdf.phpの書き換え方法 MBPDFと併用して使う場合、MBPDFを、FPDF_Protectionの派生クラスとなるように、変更する必要があります。 fpdf_protectionのファイルをインクルード(14行目あたりに追加) require('fpdf_protection.php'); クラスを定義してある部分の基底クラスを FPDF から FPDF_Protection に変更(42行目あたりを変更) class MBFPDF extends FPDF 下のように書き換え class MBFPDF extends FPDF_Protection _putType0($font)関数(
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く