Reklama
Nepřihlášený uživatel | Zaregistrovat se
 

Téma:

Počítače a InternetVývoj software

Spravuje:

hkmaly

Může vás zajímat



Reklama


PHP


spolumoderuje harry_x

Prosíme o několik drobných laskavostí:

  • před položením dotazu zkuste zapátrat v dokumentaci. Nikomu se nebude chtít formulovat znova a znova tytéž odpovědi, které již dříve a mnohem lépe napsal někdo jiný.

    Konkrétně návod k instalaci PHP na sebeobskurnejsich platformach se nachází zde.

    Dalším užitečným zdrojem informací o PHP, PHPLIB, ale i spouste jinych veci mohou být stránky Jirky Koska.

    mnohe casti oficialniho manualu k PHP jsou jiz prelozeny do cestiny, zacit muzete zde

    Mnoho otázek k instalaci je zodpovězeno na této stránce.

    A v neposlední řadě se dá zkusit i vyhledávací formulář na této stránce (napravo od formuláře pro odesílání příspěvků).

  • Dodržujte prosím téma, kterým je výhradně programování v jazyce PHP.
    Pokud se kupříkladu Váš dotaz týká pouze databází, zkuste raději klub "SQL".
    Pokud se týká javascriptu, zkuste klub javascript.

  • nepokoušejte se zvýrazňovat své příspevky přebytečnými html značkami. kdyby to dělali všichni, výsledek by se nedal číst. proto budou graficky přespříliš kreativní příspěvky odmazávány.

  • Nadávání off-topic přispěvatelum přenechte moderátorovi klubu.

  • Pokud na Vaši otázku nikdo neodpovídá, nejspíše byla položena tak nešťastným zpusobem, ze na ni při nejlepší vuli nelze odpovědět. Druhá možnost je, že nikdo neví. Každopádně si nijak nepomůžete, budete-li se odpovědi domáhat jejím opakováním provázeným verbální agresivitou.

  • Pokud navzdory výše uvedenému opravdu myslite, ze sem musite neco napsat, zkuste ještě najít odpověď na váš dotaz na www.google.com

  • Tento klub není určen pro příspěvky typu "mám nové stránky v PHP, prosím otestujte mi je" - k tomu, aby člověk našel chybu v jakékoli aplikaci, nemusí být programátor. K podobným žádostem prosím použijte raději obecnější kluby jako www.

Bez výstrahy budou mazány příspěvky, jejichž autoři předchozí řádky očividně ignorovali.
Tato pravidla jsou šita na míru pokročilejším uživatelům, bez jejichž přítomnosti by vaše dotazy mnohdy zůstaly nezodpovězeny.

Připomínky k výše uvedenému akceptuji pouze prostřednictvím interní okouní pošty.

Poznámka: vzhledem k záplavě spamů byl anonymům zakázán zápis a asi to tak nějakou dobu vydrží.

Mesic PHP bugu sice uz dozuril, ale nalezene chyby jeste nebyly opraveny ...


hkmaly - Slava pomlcky -  .
Collectd ma skvele grafy, ale jde i dale zpracovavat kdyz si to z tech jeho databazi hodis nekam jinam. Obecne, vetsina tehle sledovacu umi pluginy. Ale samozrejme, tezko ti radit bez podrobnosti ktere bych ani nemel cas cist kdybys je napsal.
mr_x Find what you love and let it kill you. 
nicmene jsem se v tom cely den vrtal a myslim ze jsem to vyresil .. inspiroval jsem se cacti a napsal si vlastni puller ktery ty data taha nezavysle na te aplikaci a cachuje je na disk...
mr_x Find what you love and let it kill you. 
prave ze nechci sledovat status - potrebuju tu status page nejak dal zpracovavat a podle toho cosi ukazovat (jedna se o relativne dost udaju u kazdem serveru - nagios pouzivam, ale to je neco uplne jineho
hkmaly - Slava pomlcky -  .
Tak jako zakladni otazka je, proc vymyslis kolo, ovsem tentokrat hranate (v php). Pro monitoring se bezne pouziva napr. nagios pokud chces status on/off (nebo collectd pokud chces graf). Samozrejme ze pokud potrebujes jenom sledovat par webu, tak je nagios kanon na vrabce (a zbytecne slozite na konfiguraci), ale zda se, ze u tebe uz to prestava byt jen par webu a pak je na miste dotaz, jestli nahodou by se ti ty dalsi vlastnosti nagiosu taky nehodili.
Dalsi alternativy tady. Mozna nektere budou i snazsi na konfiguraci.
mr_x Find what you love and let it kill you. 
nebo jinak, popisu co potrebuju aby to delalo:

web ktery bude stahovat a zpracovavat vysledky ze status page ktera je dostupna pod http://web01.domena.com/status s tim ze musim zaroven s dotazem poslat i custom hlavicku heslo: xyz. status page se musi parsovat (json) a nejak vytisknout do dashboardu (klasika - server odpovedel ze je ok, uptime, verze sw atd, server timed out server nedostupny atd). Serveru na jedne strance muze byt 200+. Status kazdeho z monitorovanych serveru by se mel alespon jednou do minuty aktualizovat podle aktualniho stavu konkretniho webu.

samotna aplikace je klasicka php backend frontend html jquery. Pro monitoring je moznost pouzit cokoli co pobezi na linux serveru a dokaze stahovat ty status stranky a ukladat je lokalne na disk.
mr_x Find what you love and let it kill you. 
pravdepodobne vubec ne PHP dotaz, nevim presne kam s tim...

mam php aplikaci ktera managuje mraky serveru - a jedna funkcnost je ze na nejakym dashboardu ukazuje status tech serveru (jsou to obyc weby dostupny pres http, s autorizaci pomoci nejaky custom http hlavicky).

Momentalne to mam reseny tak ze z databaze vyberu weby ktere uzivatel zrovna monitoruje - a podle toho na stranku nandam jquery ajax dotazy do php scriptu ktery se zepta a vytiskne vysledek.

Problem je ze cim vic serveru tim vic ajax dotazu a najednou se to zacina mrvit, chrome pise ze ceka na volny socket. Uplne nejhorsi je kdyz nektery z tech monitorovanych serveru nahodou chcipa a tudiz se na nem ty dotazy zadrhnou.

Premyslim ze bych to prestal resit tim ajaxem, resp ajax by se nesnazil zavolat skrpit ktery okamzite kontaktuje server, ale proste dejme tomu koukne do lokalniho souboru a vitiskne co v nem zrovna je. Tuhle cache bych potreboval necim vytvaret - neco co umi paralelne kontaktovat x webu a ulozit vysledek, pak si pockat a udelat to znova - to X muze byt max dejme tomu 300 ... nenapada nekoho jak tohle resit aby s tim nebylo moc prace a aby to hlavne fungovalo? ;) (neni problem mit neco pustene na serveru v cronu, jen nevim co presne by to melo byt)
 
von_Zeppelin Oliheň Beznaděje  pclib php framework
Ok. :)
von_Zeppelin Oliheň Beznaděje  pclib php framework
Aha, to nefunguje protože to md5 číslo je moc velké.

Tak hexdec(substr(md5("test"),0,8)) % 100;
 
spic už jen wtf 
to dělalo moc velká čísla, ale abs(crc32($str) % 100) je super, díky!
von_Zeppelin Oliheň Beznaděje  pclib php framework
A co třeba
hexdec( md5("test")) % 100
 
spic už jen wtf 
Mám dnes nějaký zabržděný matematický koprocesor a potřeboval bych funkci, která by ze stringu udělala "hash", který by měl hodnoty 0-N, například 0-100. Pomohl by někdo?
 
Dotaz - funguje gettext v PHP 7 na Windows 7? Absolutně se mi nedaří rozchodit přepínání jazyků, funguje jen čeština.
 
von_Zeppelin Oliheň Beznaděje  pclib php framework
Existují asi tři nebo čtyři způsoby jak se obvykle ukládají stromová data do databáze. Některé sql servery mají myslím i přímou podporu takové struktury.

Pokud jde o malé menu u jednodušší aplikace, tak tam stačí uložit ten json. Generovat z toho soubor je nejspíš zbytečné, jak říká hkmaly.
Jediný důvod, který mě napadá, je optimalizace, ale ta není obvykle potřebná, pokud aplikace nemá tisíce uživatelů a pokud ano, tak je nejspíš lepší sáhnout po nějaké obecné cache, která si to ukládání do souborů spravuje interně sama.
 
hkmaly - Slava pomlcky -  .
Taky kanon na vrabce ale neco mi rika, ze tenhle kanon implementuje ... protoze to vypada jako presne to co od zacatku loudil.
rushid Nemáte právo číst tento stručný textík 
hkmaly - Slava pomlcky -  .
Coz pro nej bude kanon na vrabce.
Mastodont  
PostgreSQL má JSON přímo jako datový typ a spoustu funkcí pro práci s tím.
 
cestujicivnoci  
Tak fajn. Zkusím to nějak použít, dík.
hkmaly - Slava pomlcky -  .
Oprava. [1]. [0] je Sporty, [1] jsou barvy. Nebo si z toho udelas normalni objekty a ty children prevedes na hash/pole podle cisla nebo toho nazvu a pak z toho zase udelas ty zjednodusene hashe a serializujes json_encode.
hkmaly - Slava pomlcky -  .
Magorina neni to nacteni ale to generovani. Webova aplikace by nemela potrebovat zapisovat na disk (mysleno primo, pres databazi samozrejme ano).