mgp4 / aws-hackathon-2015

0 stars 0 forks source link

Technologie #2

Open garncarz opened 8 years ago

garncarz commented 8 years ago

Já bych to viděl na Python, web v Djangu. Co vy?

A co DB? Klidně bych zkusil to Amazon Aurora (vylepšené MySQL od Amazonu, jestli chápu správně), ale možná se k tématu bude více hodit NoSQL (s tím ale nemám zkušenosti).

dzejar commented 8 years ago

S Pythonem souhlasím, Django mi nevadí, ale více si v současné době rozumím s Flaskem. Pokud jde o DB, tak asi cokoliv, co podporuje SQLAlchemy a/nebo to Django? Z NoSQL db mám zkušenosti asi jen s MongoDB.

pholasek commented 8 years ago

Tady nějaký borec na základě jiného hackathonu popsal lambda funkce.

Jinak mě zaujala Simple Queue Service, ačkoli nemám úplně přesnou představu, jak/čím se mezi těma službama ty data přesouvají. Myslím tím třeba S3 -> Lambda -> db -> web :disappointed_relieved:

garncarz commented 8 years ago

Uf, tak jsem jednu svoji djangovskou aplikaci (ve vývoji) překlopil i do AWS, viz http://vietcong-dev.elasticbeanstalk.com. (Originál je http://vietcong1.eu, ale to je PHP/Nette, přepisuju to do Djanga.) Byl to boj, moc dobře se s tím AWS fakt nepracuje. Výsledek více než 10 hodin je v podstatě tento commit, ale podařilo se mi tam rozjet Django pod Elastic Beanstalk, PostgreSQL RDS (Auroru jsem neměl v nabídce a Postgre nabízí rollback u migrace schématu) a S3 pro statické i uploadované soubory. Ještě by to chtělo nějak pořešit pravidelné úkoly na pozadí (pro obnovu dat v rámci mé aplikace). (To určitě využijeme. Pro Python existuje Celery na takovéto věci, ale nevím, jestli AWS pro to nemají něco vlastního.)

Pár věcí, co AWS dělá, na co dát pozor:

Jinak Django je super s tou automatickou administrací a s migracemi DB. (Umí to to SQLAlchemy?)

garncarz commented 8 years ago

Jinak ačkoliv jsem čekal, že se s tím Elastic Beanstalk bude pracovat pohodlněji/rychleji, tak bez toho to asi moc smysl nemá... protože EB nabízí například i automatické škálování, je to takový obal nad EC2. Bez toho mi to EC2 přijde jako normální VPS.

A co front-end u webu? U té své aplikace bych rád přešel k Angular.js, láká mě na tom např. to, že autoři slibují efektivní otestovatelnost. Ale zatím jsem to bohužel nestihnul, takže tady není z čeho vyjít.

ep69 commented 8 years ago

Ja umim trochu v bashi..

@dzejar likes this.

pholasek commented 8 years ago

Na základě hackathonu jsem si začal trochu hrát s OpenShiftem - nemá to sice věci typu lambda nebo SQS, ale zase je to opravdu levné.

@dzejar likes this.

garncarz commented 8 years ago

Takže tam nejde třeba spustit mnoho instancí s Pythonem, kde každá bude řešit nějaký podúkol? Co to umí kromě toho být levné? :money_with_wings:

wozniakjan commented 8 years ago

jj, mas tam tri virtualni servery uplne zadarmo, ale mel jsem trochu problem s rychlosti odezvy

garncarz commented 8 years ago

Aha, takže spíše jen klasické VPS?

wozniakjan commented 8 years ago

tim, ze jsem se v dokumentaci moc daleko nedostal, tak to pro me bylo asi jen VPS, ale asi to bude umet vic veci.

ep69 commented 8 years ago

@garncarz Ondro, nemuzes se te technologii jen tak vysmivat jen proto, ze neni z mnoziny tvych oblibenych {Django, PostgreSQL, Nette, SVN, Github}. Navic kdyz na ni intenzivne dela tvuj budouci zamestnavatel

garncarz commented 8 years ago

:smile: Já se jen ptám, co to umí. A Nette a SVN bych z té množiny už vyškrtnul, přidal Prolog. :+1: A zaměstnavatele fakt nechci. :no_good:

dzejar commented 8 years ago

Tak jestli jsem nějakou extra specialitu té lambdy nepřehlédl, tak to není nic příliš rozdílného, než metoda pověšená na nějaké - ne tak úplně - RESTové rozhraní, jen se spouští náhodně na různých lokacích a může být spouštěna i nějakými jinými událostmi, než jen HTTP requestem. Nic z toho, co jsme z těch lambd používali, by neměl být zase takový problém používat pomocí jednoduchého flask-restful serveru třeba na tom OpenShiftu, jen patrně nebude případné requesty, odesílané ven na další služby, rozesílat z velkého poolu ip adres, ale jen z jedné a při fakt velkém náporu dotazů se možná nerozškáluje na více uzlů, ale bude mít nějaký limit.

garncarz commented 8 years ago

Ty AWS Lambdy jsou podle mě především o tom, že u nich neexistují žádné instance, když nejsou potřeba. Jsou to prostě abstraktní definice funkcí, co se má vykonat, když někde přijde požadavek. Takže jsou škálovatelné a člověk platí pouze podle výpočetního času (po 100 ms). Tohoto se nedá docílit s VPS.

wozniakjan commented 8 years ago

ja bych se mozna na skalovatelnost zatim vykaslal, pokud OpenShift porad nabizi tri geary zdarma ;)

ep69 commented 8 years ago

That's the spirit! On Dec 17, 2015 4:25 AM, "Jan Wozniak" notifications@github.com wrote:

ja bych se mozna na skalovatelnost zatim vykaslal, pokud OpenShift porad nabizi tri geary zdarma ;)

— Reply to this email directly or view it on GitHub https://github.com/mgp4/aws-hackathon-2015/issues/2#issuecomment-165326933 .