Co jsem řešil
V poslední době jsem neměl moc času na psaní a když jsem chtěl psát, chtěl jsem se tomu věnovat, mít na to jednoduchý prostředek jako je Textmate (ByWord, iA Writer, WriteRoom, OmmWriter) a přitom se nemuset handrkovat s HTML a s tím jak mi občas nevhodné styly ničí text nebo kusy kódu.
Wordpress u mě na hostingu ještě narazil na limit starého MySQL a mě se také nechtělo migrovat na nový databázový server, potom mi také chybělo verzování v Gitu na který jsem zvykl.
Protože jsem před časem viděl, že Github pages se dají dobře použít pro vlastní blog, rozhodl jsem se na to přejít se svými blogy TopTopic? a Prskavčí blog.
Letos jsem přednášel na Webexpu na téma deployment. Ve 30 minutách se nedá říci dost, aby jste se dozvěděli všechno tak zkusím v tomto článku shrnout o čem jsem mluvil a přidat nějaké zdroje, které pomůžou v dalších úsilí při automatizaci deploymentu.
Pro dobré fungovaní Continuous Integration potřebujete automatizovat deployment na prostředí. Na prostředích se často střídají aktuální feature větve vývojářů nebo se tam provádí update z větve pro release či sprint.
Jako vývojář jsem si vybral přednášky v Development Room a Development Hall.
V pátek začnu na přednášce co má Michal Táborský o Architektuře škálovatelných aplikací, jistě se dozvíme jak to dělají v Mall.cz. Michala znám a jeho vyprávění a postřehy mi přijdou velmi podobné tomu jako to řešíme v práci i my. Pokračovat budu na své přednášce, kde řeknu něco o tom proč automatizovat deployment, co na to použít. Jak to řešíme v LMC (Jobs.
V poslední době se objevilo hodně článků o RabbitMQ a připravuje se kniha kde většina příkladů je v PHP. Připravil jsem malou demonstraci jak se message queue dobře využit. RabbitMQ je napsaný v Erlangu podobně jako CouchDB a hodí ke zpracování dávkových úloh. V demonstraci využívám knihovnu wkhtmltopdf která umí zpracovat html stránku na PDF, používá k tomu webkit jádro.
require_once APPLICATION_PATH . ‘/models/Rabbit.php’; /**
/Ensure library/ is on include_path */ set_include_path(implode(PATH_SEPARATOR, array( realpath(APPLICATION_PATH .
Pokud se zajímáte o cloudové technologie, tak možná znáte Heroku. Heroku je pěkné řešení pro Ruby, které vám umožní vytvářet aplikace v Sinatře nebo v Rails a deployment provádět pomocí Gitu. Pro PHP mi něco takového dlouho chybělo, ale začíná se částečně situace vylepšovat, protože je na světe PHP Fog.
Podobně to lehce vyřeším i na svém serveru pomocí SSH a Capistrano, ale stejně se musím starat o instalaci VPS. Jednodušší varianta je jen hosting s SSH přístupem například co mám na Hostmonster.
Dnes je část profilování v Xdebugu (https://xdebug.org) ukládána do souborů v KCacheGrind formátu. Tato funkce byla přidána do Xdebugu, ale není dle specifikace formátu. Byla vytvořena revezním inženýrstvým a tato stávající implementace obsahuje chyby a nepřesnosti.
Od verze 0.6 je KCacheGrind více striktní ohledně interpretace formátu a to způsobuje chyby při jeho používání s výstupy Xdebugu https://bugs.kde.org/show_bug.cgi?id=256425.
Vybraná částka bude použita, aby Derick Rethans mohl správně vyřešit problém s integrací Xdebugu/KCacheGrindu.