jurchiks Posted October 17, 2013 Report Share Posted October 17, 2013 hmm nu nezinu gan vai uz katru tekstu kuram vajag tulkojumu ir prātīgi vērsties pie datubāzes, cik tad daudz pieprasījumu datubāzei būs jāapstrādā. Kaut kā noteikti var arī savādāk teiksim izvēlētai valodai tulkojumus turēt atmiņā.Persistent connection, query cache, prepared statements. Gribi in-memory cache - izmanto Redis vai ko tamlīdzīgu. Jebkurā gadījumā, izmantot teksta failus dinamisku tulkojumu glabāšanai, ja tie tiek tulkoti caur webu, IMHO ir vienkārši debīli. gettext vispār man liekas reāli neparocīgs + morāli novecojis. Quote Link to comment Share on other sites More sharing options...
Kavacky Posted October 18, 2013 Report Share Posted October 18, 2013 Jā, priekš tulkojumu masīva uzturēšanas gettext ir morāli novecojis, taču PREPARED NAHUJ STATEMENTS - tas ir ok. Quote Link to comment Share on other sites More sharing options...
daGrevis Posted October 18, 2013 Report Share Posted October 18, 2013 Gettext alternatīvas? Problēma ar gettext ir, ka nevar nomainīt aktīvo bakendu, kurš vienmēr būs kešots .mo (kompilēts .po), bet gribu Redis ar fallbacku uz RDBM! Quote Link to comment Share on other sites More sharing options...
codez Posted October 18, 2013 Report Share Posted October 18, 2013 Labi, ka scalā un play man nav ar to problēmas. Uz servera startupu ielādēju visus tulkojumus hashmapā, kurš tālāk jau pieejams katrā kverijā. Izveidoju funkcijas t un tn, pārtranslēju standarta tn formulas nepieciešamajām valodām un varu dzīvot laimīgs, jo šādā veidā man tulkojums tiek ņemts no atmiņas (pat bez requesta mem db kā redis vai memcache) un tulkojumi netiek lādēti katru reizi. Ja tulkojumi mainās servera darbības laikā un tos ir nepieciešams atjaunot, var vienkārsi izsaukt ielādēšanu vēlreiz - kad un kā, tas jau pēc vajadzības. Quote Link to comment Share on other sites More sharing options...
jurchiks Posted October 18, 2013 Report Share Posted October 18, 2013 (edited) Javā/Scalā tad loģiski, ka tādu problēmu nav. @Kavacky - kas tev nepatīk prepared statementos? Baigi patīk rakstīt "SELECT " . implode(', ', $columns) . " FROM $table WHERE $wheres"? Šajā gadījumā es prepared statements minēju tāpēc, ka citādi būtu problēmas ar query cache, ja katrs kverijs ir ar jau iekļautiem mainīgajiem tā vietā, lai tos baindotu caur prepared statement interfeisu. Edited October 18, 2013 by jurchiks Quote Link to comment Share on other sites More sharing options...
Kavacky Posted October 18, 2013 Report Share Posted October 18, 2013 Kādas viņa projektā varētu būt problēmas ar kešu? Quote Link to comment Share on other sites More sharing options...
Kasspars Posted October 18, 2013 Report Share Posted October 18, 2013 Persistent connection, query cache, prepared statements. Gribi in-memory cache - izmanto Redis vai ko tamlīdzīgu. Jebkurā gadījumā, izmantot teksta failus dinamisku tulkojumu glabāšanai, ja tie tiek tulkoti caur webu, IMHO ir vienkārši debīli. gettext vispār man liekas reāli neparocīgs + morāli novecojis. Aha, gettext, kurš ir mega ātrs un praktiski resursu nerijošs formāts, kurš atbalsta Plural formas, kuram ir sprintf sintakse ir novecojis un neparocīgs. Savukārt katra tulkojamā labeļa izvilkšana no db ir ideāls risinājums. Turpini tādā garā, ir interesanti palasīt Quote Link to comment Share on other sites More sharing options...
jurchiks Posted October 21, 2013 Report Share Posted October 21, 2013 Ģēnij, runa iet par CMS ar teksta tulkošanu, nevis par statiskiem tekstiem. Quote Link to comment Share on other sites More sharing options...
daGrevis Posted October 21, 2013 Report Share Posted October 21, 2013 Es runāju par abiem — gan CMS tekstu tulkošanu (blograkstiem valodas), gan pārējā tulkošana (pogu nosaukumi, viss, kas ir dizainā, utt.). Quote Link to comment Share on other sites More sharing options...
codez Posted October 21, 2013 Report Share Posted October 21, 2013 ja runa ir par contenta tulkošanu, tad kāda problēma ir to glabāt db? Manuprāt, jebkurā prātīgā sistēmā contents glabāsies db, vienalga, vienā vai daudzas valodās. Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.