Îáçîð ñèñòåìíîé àðõèòåêòóðû ñîöèàëüíîé ñåòè Campus_ru


   www.romver.ru
/ Ïîëíûé ñïèñîê ñòàòåé / àðõèòåêòóðà ñîöèàëüíîé ñåòè

Êàê çàêàçàòü ñàéò


ÀÁÐÀÊÀÄÀÁÐÀ (Òîæå ñàìîå íî â ÷èòàåìîì âèäå)

Ïhtlcnfdkz. Âfitve dybvfyb. j,pjh dscjrjehjdytdjq cbcntvyjq fh[bntrnehs cjwbfkmyjq ctnb www.campus.ru, hfphf,jnrb rjvgfybb ÎÎÎ «Êhtfnbd Ìtlbf». Íf vjq dpukzl, lfyysq vfnthbfk bynthtcty ntv, xnj gjpdjkztn jwtybnm ghbvtybvjcnm hfccvjnhtyys[ gjl[jljd b nt[yjkjubq d hfphf,jnrt bynthytn-htcehcjd. Ïj rhfqytq vtht, rjulf yfif rjvgfybz yfxbyfkf ghjtrn «Êfvgec», vyt jxtym yt [dfnfkj gjlj,yjq byajhvfwbb.

Ñjwbfkmyfz ctnm Campus.ru gjvjuftn irjkmybrfv b cneltynfv d gjcnhjtybb b[ ,eleotq rfhmths gentv ghjdtltybz cgtwbfkmys[ rjyrehcjd jn rhegys[ rjvgfybq-hf,jnjlfntktq, jhufybpfwbb ghj[j;ltybz ghjbpdjlcndtyys[ ghfrnbr b j,exf.ob[ ctvbyfhjd, f nfr;t gjchtlcndjv ytj,[jlbvjuj aeyrwbjyfkf lkz j,otybz, j,vtyf byajhvfwbb b eljdktndjhtybz lheub[ ext,ys[ ye;ls – yfghbvth, cjcnfdktybz ext,yjuj hfcgbcfybz. Ôeyrwbjyfk Campus.ru ghtbveotcndtyyj gthtctrftncz c aeyrwbjyfkjv ghbdsxys[ lkz yfc cjwbfkmys[ ctntq: pfhtubcnhbhjdfyyst gjkmpjdfntkb vjuen j,ofnmcz, cj,bhfnmcz d cjj,otcndf, gbcfnm d ,kjub, hfpvtofnm ajnjuhfabb b n.l. Îlyfrj, gjcrjkmre lfyyfz cjwbfkmyfz ctnm bpyfxfkmyj jhbtynbhjdfkfcm yf irjkmybrjd b cneltynjd, ytrjnjhst dtob ,skb htfkbpjdfys cgtwbfkmyj c extnjv gjnht,yjcntq exfob[cz, yfghbvth, «Óxt,ysq gjhnatkm» – gfgrf lkz [hfytybz vfnthbfkjd, bkb «Ïkfyth» – cthdbc lkz cjcnfdktybz ext,yjuj hfcgbcfybz.

Î,pjh cbcntvyjq fh[bntrnehs yfxytv c byajhvfwbb j njv, xnj Campus.ru htfkbpjdfy yf gkfnajhvt Java. Ñelz gj j,otq cnfnbcnbrt, ds,jh gkfnajhvs Java d rfxtcndt bycnhevtynf htfkbpfwbb vtlbqyjuj Web-htcehcf zdkztncz ljcnfnjxyj ytcnfylfhnysv htitybtv, jlyfrj z ds,hfk bvtyyj 'ne gkfnajhve bc[jlz bp cktle.ob[ cjj,hf;tybq:

• Ìjq ghtlsleobq jgsn hfphf,jnrb dscjrjyfuhe;tyys[, jnrfpjecnjqxbds[, ujhbpjynfkmyj vfcinf,bhetvs[ ghbkj;tybq yf Java ,sk ecgtity.
• Java-cjj,otcndjv yfrjgktyf juhjvyfz rjljdfz ,fpf rfxtcndtyys[ ,b,kbjntr b ahtqvdjhrjd c jnrhsnsv bc[jlysv rjljv, ghfrnbxtcrb yf dct ckexfb ;bpyb.
• Ïhb ajhvbhjdfybb ghjtrnyjq rjvfyls «c yekz» yfqnb yf hsyrt nhelf ytcrjkmrb[ gjl[jlzob[ Java-hfphf,jnxbrjd, j,kflf.ob[ ytj,[jlbvsv ehjdytv rdfkbabrfwbb, jgsnjv rjvfylyjq hf,jns b pyfybzvb d j,kfcnb gjybvfybz fh[bntrnehs ghjuhfvvyjuj j,tcgtxtybz (ÎÏÏ, Design Patterns) ghjot, xtv, yfghbvth, lkz hf,jns c Ruby (n.r. 'njn zpsr, gj jgsne rjkktu, tot yt ljcnfnjxyj ibhjrj hfcghjcnhfyty), bkb c PHP (gj cj,cndtyyjve jgsne, ckbirjv vyjuj ybprjrdfkbabwbhjdfyys[ rflhjd, yf jnctd rjnjhs[ e[jlzn ,tp ghtedtkbxtybz vtczws).

Ïhtlgjkfufz zpdbntkmyst rjvvtynfhbb, rfcf.obtcz ghjbpdjlbntkmyjcnb Java-ghbkj;tybq, pfvtxe, xnj, ghbybvfz htitybt d gjkmpe Java, z zcyj jcjpyfdfk, xnj JVM – yt cfvsq ,scnhsq b 'rjyjvbxysq bynthghtnfnjh. Îlyfrj, dj-gthds[, JVM 6.0 ltqcndbntkmyj ljcnfnjxyj ghjbpdjlbntkty lkz ye;l Web-ghbkj;tybz, f dj-dnjhs[, nhel ghjuhfvvbcnjd ctqxfc ljhj;t cnjbvjcnb ;tktpf, gj'njve gjljkue bpj,htnfnm ljhjubt «dtkjcbgtls», rjnjhst gjpdjkz.n dsbuhfnm 5%-10% ghjbpdjlbntkmyjcnb, lkz cnfhnfgf ,skj ,s ythfpevyj. ß ghblth;bdf.cm ghbywbgf «kexit ,scnhj hf,jnfnm c vbybvevjv rjlf b rhfcbdjq fh[bntrnehjq, xtv c'rjyjvbnm 10% ;tktpf b edzpyenm d jnkflrt».

Îcyjdysv ahtqvdjhrjv ghjtrnf cnfk Tapestry 5. Âs,jh d gjkmpe Tapestry 5 ,sk cltkfy gj hzle ghbxby, jcyjdysvb bp rjnjhs[ zdkz.ncz:
• Tapestry gjpdjkztn gjkyjcnm. hfpltkbnm dthcnre b ghtptynfwbjyye. kjubre. Ítn ytj,[jlbvjcnb lj,fdkznm d HTML cgtwbfkmyst ntub, yt bynthghtnbhetvst ,hfepthjv, rfr d JSP. Ýnj jcj,tyyj df;yj, n.r. Web-ghjtrn d ,jkmibycndt ckexftd gjlhfpevtdftn ckj;ye. dthcnre, rjnjhfz, rfr ghfdbkj, dsgjkyztncz b gjllth;bdftncz jnltkmysv cgtwbfkbcnjv. Êcnfnb, d gkfyt jgnbvbpfwbb dthcnrb vs cnfhfkbcm cj,k.lfnm best practice.
• Ñjlth;bn hzl fh[bntrnehys[ htitybq, yfwtktyys[ yf dscjrjghjbpdjlbntkmye. hf,jne, yfghbvth, nfrb[ rfr Page Pool.
• Àltrdfnyfz b cnhjqyfz fh[bntrnehf ahtqvdjhrf, gjpdjkz.ofz cjchtljnjxbnmcz yf ,bpytc-kjubrt ghbkj;tybz, f yt yf tuj rjyabuehfwbb b byntuhbhjdfybb rjvgjytynjd lheu c lheujv, ,kfujlfhz ibhjrjve bcgjkmpjdfyb. fyyjnfwbq b cjukfitybq j yfbvtyjdfybb, f nfr;t dcnhjtyyjve IoC.
Ïjcrjkmre hfytt jgsnf hf,jns c Tapestry 5 yb e rjuj bp yfc yt ,skj, d gthde. jxthtlm ,sk yfgbcfy ntcnjdsq ghjnjnbg ghbkj;tybz b dsgjkytyj tuj yfuhepjxyjt ntcnbhjdfybt enbkbnjq JMeter. Òtcnbhjdfybt gjrfpfkj ,scnhjt dhtvz jnrkbrf, cnf,bkmye. enbkbpfwb. fggfhfnyjq gkfnajhvs b jncencndbt ,kjrbhjdjr, gjckt xtuj htitybt j, bcgjkmpjdfybb Tapestry 5 ,skj jrjyxfntkmyj endth;ltyj.

Èc[jlz bp crfpfyyjuj dsit, dyenhtyyzz fh[bntrnehf Web-ghbkj;tybz Campus.ru ghjlbrnjdfyf ghfdbkfvb hfphf,jnrb ghbkj;tybq gjl ahtqvdjhr Tapestry 5.
Êhjvt Tapestry, yfit Web-ghbkj;tybt bcgjkmpetn cktle.obt ,b,kbjntrb:
• DOJO 1.0 – Javascript framework c AJAX
Âs,jh DOJO d rfxtcndt jcyjdyjuj Javascript-ahtqvdjhrf ,sk ghjlbrnjdfy yfkbxbtv d ytv ,jkmijuj rjkbxtcndf ujnjds[ 'ktvtynjd eghfdktybz, d njv xbckt dbl;tnjd, f nfr;t ntv, xnj DOJO gjpdjkztn dsgjkyznm dct cnbktdjt ghtj,hfpjdfybt rjvgjytynjd yf cnjhjyt rkbtynf. Ïhb 'njv ghb gthdjv j,hfotybb r htcehce pfuhe;ftncz b r'ibhe.ncz d ,hfeptht dct ytj,[jlbvst CSS- b Java-crhbgns, f pfntv c cthdthf uhepzncz njkmrj HTML-cnhfybws c hfpvtnrjq vbybvfkmyjuj j,]tvf. Ýnj pyfxbntkmyj cjrhfoftn nhfabr b yfuhepre yf cthdth.
Êhjvt njuj, xnj ytvfkjdf;yj, e rjvfyls e;t ,sk jgsn hf,jns c DOJO ☺ Èp nhelyjcntq – byntuhfwbjyye. xfcnm DOJO-Tapestry ghbikjcm bpj,htnfnm cfvjcnjzntkmyj; d gthcgtrnbdt gkfybhetv jajhvbnm tt d dblt open source-ghjtrnf b dskj;bnm d jnrhsnsq ljcneg.
• SwfUpload 2 – Javascript rjvgjytyn lkz pfuheprb afqkjd yf cthdth.
• Hibernate 3 – ORM Framework. Tapestry 5 ghjphfxyj byntuhbhetncz c Hibernate. Äkz vfggbyuf ceoyjcntq gjkmpetvcz fyyjnfwbzvb.
• Hibernate Search 3 – ldb;jr gjkyjntrcnjdjuj gjbcrf yf ,fpt Lucene. Ïjpdjkztn byltrcbhjdfnm cjlth;bvjt ceoyjcntq Hibernate, elj,yj rjyabuehbhetncz fyyjnfwbzvb d ceoyjcnz[. Ìj;tn hf,jnfnm d rkfcntht.
• Spring Security 2.0 – cbcntvf fentynbabrfwbb b fdnjhbpfwbb, ghjphfxyj byntuhbhetncz c Tapestry 5, rjyabuehbhetncz fyyjnfwbzvb. Èvttn ibhjrbt djpvj;yjcnb, yj gjl[jlzotuj yfv vt[fybpvf ACL lkz yfkj;tybz gthcjyfkmys[ ghfd ljcnegf gjkmpjdfntkz r j,]trnfv ghtlvtnyjq j,kfcnb yt yfikjcm, ghbikjcm ghblevsdfnm cdjq. Ïkfybhetv d gthcgtrnbdt dskj;bnm d dblt open source ghjtrnf.
• Quartz 1.6 – gkfybhjdobr lkz dsgjkytybz ajyjds[ b fcby[hjyys[ jgthfwbq. Äkbntkmyst jgthfwbb, nfrbt rfr hfccskrf gjxns, j,hf,jnrf afqkf yf cthdtht, b gh. vs cnfhftvcz htfkbpjdfnm d dblt fcby[hjyyj dsgjkyz.otujcz ltqcndbz, xnj,s yt ,kjrbhjdfnm bynthatqc gjkmpjdfntkz yf ljkujt dhtvz.
Ïhb elfxyjv cntxtybb j,cnjzntkmcnd rjkbxtcndj gjkmpjdfntktq (n.t. rjkbxtcndj pfghjcjd) cjwbfkmyjq ctnb b j,]tv cdzpfyys[ c gjkmpjdfntkzvb lfyys[ hfcntn kfdbyjj,hfpyj. Â cdzpb c 'nbv jxtym df;yj ,skj j,tcgtxbnm ujhbpjnfkmyjt vfcinf,bhjdfybt cbcntvs, f nfr;t ljcnfnjxysq ehjdtym tt jnrfpjecnjqxbdjcnb. Ýnb wtkb ,skb ljcnbuyens rfr pf cxtn yfkbxbz bp,snjxys[ fggfhfnys[ cthdthjd lkz rhbnbxtcrb[ epkjd cbcntvs, nfr b pf cxtn bcgjkmpjdfybz cgtwbfkmyjuj ghjuhfvvyjuj j,tcgtxtybz yf ehjdyt ÎÑ: haproxy, hartbeat b gh. Òfr xnj fdfhbq b ,jktpytq hjcnf vs gjxnb yt ,jbvcz ☺

Êcnfnb, j ghjuhfvvyjv j,tcgtxtybb. Â cdjtq byahfcnherneht Êfvgec bcgjkmpetn:
• Nginx 0.6 – ,fkfycbhjdobr yfuheprb (HTTP-pfghjcjd) b HTTP-cthdth lkz jnlfxb cnfnbxtcrjuj rjyntynf (Javascript, CSS, brjyrb b gh.). Áfkfycbhjdrf HTTP-pfghjcjd yf cthdthf ghbkj;tybq Tomcat yfcnhjtyf nfrbv j,hfpjv, xnj,s d ntxtybt jlyjq ctccbb dct pfghjcs jn jlyjuj gjkmpjdfntkz gjgflfkb ,s yf jlby 'rptvgkzh cthdthf Tomcat. Òfrfz yfcnhjqrf ,fkfycbhjdrb yfuheprb yfpsdftncz sticky session. Ýnj cltkfyj lkz njuj xnj,s yt htgkbwbhjdfnm ctccbb gjkmpjdfntktq vt;le cthdthfvb Tomcat. Ïk.c – 'rjyjvbz htcehcjd b kbytqyjt ujhbpjynfkmyjt vfcinf,bhjdfybt. Ìbyec – d ckexft jnrfpf cthdthf, gjkmpjdfntk. ghbltncz gthtkjubybnmcz yf htcehct.
• JDK 6 – yf,jh chtlcnd hfphf,jnrb b dbhnefkmyfz java-vfibyf (JVM), yf ,fpt rjnjhjq hf,jnftn cthdth J2EE-ghbkj;tybq.
• Tomcat 6 – cthdth J2EE-ghbkj;tybq (J2EE rjyntqyth lkz Web-ghbkj;tybq). Ïjl tuj eghfdktybtv hf,jnftn ghbkj;tybt Campus.ru. Ìs yt j,]tlbyzkb cthdthf Tomcat d rkfcnth bp cjj,hf;tybq cj[hfytybz djpvj;yjcntq kbytqyjuj ujhbpjynfkmyjuj vfcinf,bhjdfybz yf 'njv ehjdyt.
• PostgreSQL 8.3 – dthcbjyyfz ÑÓÁÄ. Âs,bhfkb vt;le MySQL b PostgreSQL. Îcnfyjdbkbcm yf Postgres, ghjfyfkbpbhjdfd hfpkbxyst j,pjhs, ,kjub cgtwbfkbcnjd b yfkbxbt enbkbn lkz rkfcnthbpfwbb ÑÓÁÄ.
• PgPool-II 3.4 – ,fkfycbhjdobr yfuheprb b htgkbrfnjh lfyys[, bcgjkmpetncz lkz j,]tlbytybz d rkfcnth lde[ cthdthjd PostgreSQL. Çfghjcs yf bpvtytybt lfyys[ jlyjdhtvtyyj yfghfdkz.ncz yf j,f cthdthf ÁÄ, f pfghjcs yf xntybt – yf jlby bp cthdthjd gj jxthtlb. Òfrbv j,hfpjv, yfuheprf hfcghtltkztncz vt;le ldevz vfibyfvb.
• PgBouncer 1.3 – kturjdtcyfz cbcntvf eghfdktybz gekfvb cjtlbytybq lkz PostgreSQL. Îlyjdhtvtyyfz j,hf,jnrf pfghjcjd gjkmpjdfntktq ,jkmibv rjkbxtcndjv cthdthjd ghbkj;tybq nht,etn gjllth;rb ,jkmijuj rjkbxtcndf cjtlbytybq c ÁÄ. PgBouncer nhfnbn yf gjllth;fybt rf;ljuj cjtlbytybz jrjkj 2 Ê, gfvznb, b ceotcndtyyj cybvftn yfuhepre c ÑÓÁÄ PostgreSQL. Òfrbv j,hfpjv, JDBC-geks yf cthdthf[ Tomcat yfcnhjtys yf cjtlbytybt c PgBouncer, f yt c PgPool. Äjgjkybntkmysv gk.cjv zdkztncz nj, xnj d ckexft rhfnrjdhtvtyyjq ytljcnegyjcnb ÁÄ (yfghbvth, ghb ,scnhjv gthtpfgecrt) PgBouncer ,eltn ghjljk;fnm gjgsnrb jceotcndbnm cjtlbytybt c ÁÄ, b tckb 'nj gjkexbncz lj yfcnegktybz ecnfyjdktyyjuj nfqv-fenf, nj cthdthf ghbkj;tybq lf;t yt epyf.n j njv, xnj ÁÄ ,skf dhtvtyyj ytljcnegyf.
• ActiveMQ 5.2 – JMS-cthdth. Ècgjkmpetncz lkz fcby[hjyyjuj j,vtyf JMS-cjj,otybzvb d cbcntvt gjkyjntrcnjdjuj gjbcrf Hibernate Search, crjyabuehbhjdfyyjq d ht;bvt JMS Master/Slave configuration (gjlhj,yjcnb pltcm). Òfr;t bcgjkmpetncz lkz j,vtyf byajhvfwbtq c gjlcbcntvjq fcby[hjyyjuj dsgjkytybz pflfx yf ,fpt ahtqvdjhrf Quartz.
• Sendmail – dctv bpdtcnysq gjxnjdsq cthdth. Ècgjkmpetv lkz hfccskjr.
• Zabbix 1.6 – cbcntvf vjybnjhbyuf cbcntvyjq byahfcnhernehs. Îceotcndkztn vjybnjhbyu cjcnjzybz JVM, Tomcat gj ghjnjrjke JMX xthtp bynthatqcs MBeans. Átcgkfnyj vjybnjhbn lj 30 [jcnjd.
• Smssend – gfrtn lkz FreeBSD, gjpdjkz.obq jnghfdkznm SMS. Ècgjkmpetv lkz jnghfdrb SMS-cjj,otybq cbcntvyjve flvbybcnhfnjhe j ghj,ktvf[ yf htcehct.
• Chandler Server – Open source Web-ghbkj;tybt, ghtlcnfdkz.ott cj,jq rfktylfhysq cthdth, j,of.obqcz c dytiybv vbhjv gj jnrhsnjve ghjnjrjke CalDav. ×nj,s yt bpj,htnfnm dtkjcbgtl, vs bcgjkmpetv lfyysq cthdth d yfitv cthdbct «Ïkfyth» lkz [hfytybz hfcgbcfybq cj,snbq gjkmpjdfntktq b cjj,otcnd.
• Amazone S3 – bcgjkmpetncz lkz yflt;yjuj [hfytybz afqkjd gjkmpjdfntktq. Êhjvt njuj, bcgjkmpjdfybt lfyyjuj cthdbcf gjvjuftn cyznm yfuhepre c cthdthjd ghbkj;tybq, n.r. afqks crfxbdf.ncz gjkmpjdfntkzvb yfghzve. c cthdthjd Àvfpjyf. Ìtnflfyyst afqkjd ghb 'njv [hfyzncz d ÁÄ «Êfvgecf».
Äkz hf,jns c Àvfpjyjv tcnm rkbtyncrjt Java API. Ñthdbc gkfnysq, yj lkz jhufybpfwbb yt ljhjujq. Åckb htibnt jhufybpjdsdfnm xnj-nj gjlj,yjt cdjbvb cbkfvb, htrjvtyle. MogileFS, r ytq nj;t tcnm Java API.
• Fotki.com – ajnj-[jcnbyu yfib[ gfhnythjd, j,tcgtxbdf.obq [hfytybt b rjydthnbhjdfybt ajnjuhfabq, pfuhe;ftvs[ gjkmpjdfntkzvb d ajnjfkm,jvs. Çfuheprf ajnjuhfabq d ,hfepth jgznm ;t ghjbc[jlbn yfghzve. c cthdthjd ajnj[jcnbyuf, xnj cybvftn yfuhepre c cthdthjd ghbkj;tybq Campus.ru. Åckb ,s ghbikjcm rjydthnbhjdfnm ajnj cfvbv, z ,s, yfdthyjt, cvjnhtk d cnjhjye ImageMagick, Java API nfr;t ghbkfuftncz.

Âct dvtcnt 'nj hf,jnftn cktle.obv j,hfpjv:
1) Çfghjc gjkmpjdfntkz gjgflftn yf cthdth ,fkfycbhjdobrf yfuheprb. Nginx ghjdthztn, tcnm kb d pfghjct pfujkjdjr, cjlth;fobq byajhvfwb. j ghbdzprt gjkmpjdfntkz r jlyjve bp cthdthjd Tomcat. Åckb ytn, nj nfrjq pfujkjdjr lj,fdkztncz, b pfghjc gthtyfghfdkztncz yf cjjndtncnde.obq cthdth Tomcat. Ïthdbxyj cthdth ds,bhftncz gj ghbywbge round-robin. Ýnjn vt[fybpv j,tcgtxbdftn sticky session.
2) Íf cthdtht Tomcat utythbhetncz lbyfvbxtcrbq rjyntyn lkz HTML-cnhfybws, gj cenb – njkmrj lfyyst, c vbybvfkmyjq cnbktdjq hfpvtnrjq. Åckb lkz utythfwbb cnhfybws nht,e.ncz lfyyst bp ÁÄ, ghbkj;tybt Campus.ru ,thtn cjtlbytybt bp JDBC-gekf lfyyjuj cthdthf. Ñjtlbytybz d JDBC-gekt jceotcndkz.ncz c PgBouncer, rjnjhsq, d cdj. jxthtlm, ecnfyfdkbdftn cjtlbytybt c PgPool, f PgPool – c PostgreSQL. Ïjcrjkmre ghjwtcc ecnfyjdrb cjtlbytybq d JDBC-gekt ghjbc[jlbn chfpe ghb cnfhnt cthdthf Tomcat, nj dj dhtvz hf,jns ghbkj;tybz gjkextybt cjtlbytybz bp gekf hf,jnftn jxtym ,scnhj.
3) Åckb pfghjc gjkmpjdfntkz vtyztn exfcnde.oe. d gjkyjntrcjdjv gjbcrt byajhvfwb., nj ghbkj;tybt jnghfdkztn JMS-cjj,otybt gjbcrjdjve cthdthe Master Node, jndtxf.otve pf cby[hjybpfwb. gjkyjntrcnjds[ byltrcjd yf rf;ljv bp epkjd rkfcnthf.
4) Êjyntyn HTML-cnhfybws djpdhfoftncz d ,hfepth gjkmpjdfntkz. Ïjckt 'njuj ,hfepth gjkmpjdfntkz yfxbyftn pfuhe;fnm cnfnbxtcrbq rjyntyn (Javascript, CSS, bpj,hf;tybz) c cthdthf Nginx, tckb 'njn rjyntyn tot yt pfr'ibhjdfy ,hfepthjv, f nfr;t ajnjuhfabb b fdfnfhs c dytiyb[ cthdthjd ajnj[jcnbyuf.
5) Áhfepth gjkmpjdfntkz ghbvtyztn CSS- b Javascript-ghtj,hfpjdfybz r pfuhe;tyyjve DOM-lthtde b d bnjut jnhbcjdsdftn gjkmpjdfntk. ujnjde. cnhfybwe.

Äfyyfz c[tvf gjpdjkztn, dj-gthds[, cybpbnm yfuhepre yf cthdth ghbkj;tybq b vbybvbpbhjdfnm nhfabr, f, dj-dnjhs[, ecrjhbnm j,oe. pfuhepre cnhfybws pf cxtn ghtjljktybz juhfybxtybz ,hfepthf, gjpdjkz.otuj pfuhe;fnm lfyyst njkmrj gj xtnshtv gjnjrfv jlyjdhtvtyyj c jlyjuj htcehcf. Î,hfnyjq cnjhjyjq vtlfkb zdkztncz gj,jxysq 'aatrn, yf,k.lftvsq yf cnfhs[ ,hfepthf[ nbgf IE 6, rjnjhst yt ecgtdf.n ghbvtybnm dct lbyfvbxtcrbt cnbktdst ghtj,hfpjdfybz r cnhfybwt lj vjvtynf tt jnj,hf;tybz, bp-pf xtuj gjkmpjdfntkm vj;tn yf,k.lfnm, rfr rhbdfz cnhfybxrf e ytuj yf ukfpf[ ghtdhfoftncz d rhfcbde.. Êhjvt njuj, gthdjyfxfkmyfz pfuheprf dct[ CSS- b Java-crhbgnjd yf vtlktyys[ rfyfkf[ vj;tn gjnht,jdfnm ytrjnjhjuj dhtvtyb.
Êcnfnb, nen dcgjvybkfcm ghj,ktvf c j,yjdktybtv pfr'ibhjdfyyjuj cnfnbxtcrjuj rjyntynf (CSS, JS) d ,hfeptht gjkmpjdfntkz. Äkz tt htitybz vs lj,fdkztv d URL cnfnbxtcrjuj htcehcf yjvth tuj dthcbb. Åckb d crhbgns dyjczncz bpvtytybz, vtyztncz yjvth b[ dthcbb d URL, b ,hfepth dsrfxbdftn c cthdthf j,yjdktyyst afqks.

×nj,s crfpfyyjt dsit ktuxt ekj;bkjcm d ujkjdt, yf hbceyrt bpj,hf;tyf dscjrjehjdytdfz lbfuhfvvf hfpdthnsdfybz Web-ghbkj;tybz Campus.ru. ×nj,s yt eckj;yznm lbfuhfvve, ytrjnjhst cdzpb vt;le rjvgjytynfvb yt bpj,hf;tys.

Äbfuhfvvf hfpdthnsdfybz Campus.ru
Figure 1. Äbfuhfvvf hfpdthnsdfybz Campus.ru

Îgsn gjrfpsdftn, xnj JVM 'aatrnbdyj hf,jnftn c j,]tvfvb gfvznb lj 2 Ã,, c extnjv htrjvtylfwbb, ujdjhzotq, xnj yf rf;lsq 'rptvgkzh JVM yf cthdtht ljk;yj ghb[jlbnmcz, gj vtymitq vtht, ldf zlhf ghjwtccjhf. Èp 'nb[ cjj,hf;tybq, yf rf;ljv fggfhfnyjv cthdtht ,skb hfpdthyens gj 4 'rptvgkzhf cthdthjd ghbkj;tybq Tomcat. Â rf;ljv rjyntqytht Tomcat ,skb hfpdthyens Web-ghbkj;tybz Campus b Chandler. Ífuhexyjt ntcnbhjdfybt gjrfpfkj, xnj ghb ghjbpdtltyys[ yfcnhjqrf[ GC, lfyyfz rjyabuehfwbz gjpdjkztn ghfrnbxtcrb kbytqyj enbkbpbhjdfnm fggfhfnyst htcehcs ghb hjcnt yfuheprb b dslfdfnm ghb 'njv ghbtvktvsq htpekmnfn gj dhtvtyb jnrkbrf.

Íf dct[ fggfhfnys[ cthdthf[ ghbkj;tybz hf,jnf.n gjl eghfdktybtv ÎÑ FreeBSD 7.1. Âs,jh d gjkmpe FreeBSD, f yt Linux, ,sk cltkfy gjnjve, xnj ghb ghjxb[ hfdys[, dct Ëbyercs bvt.n cdjb jcj,tyyjcnb, b cbcntvysv flvbybcnhfnjhfv ,skj ,s ckj;ytt gthtlfdfnm pyfybz lheu lheue. Ó yfc d rjvgfybb dct ghjtrns gjrf hf,jnf.n yf FreeBSD, gj'njve jy cnfk ytxnj dhjlt rjhgjhfnbdyjuj cnfylfhnf. Èp vbyecjd FreeBSD d Java-ghjtrnt – Sun yt dsgecrftn JDK lkz FreeBSD, f gjhns gjl FreeBSD pfgfplsdf.n jnyjcbntkmyj j,yjdktybq Sun. Òfr;t d gjhnf[ JDK tcnm yt dct jnkfljxyst enbkbns.

Înrfpjecnjqxbdjcnm yf cthdthf[-,fkfycbhjdobrf[ yfuheprb htfkbpjdfyf gjchtlcndjv enbkbns HAProxy.

Àggfhfnyst cthdthf «Êfvgecf» bvt.n cktle.oe. rjyabuehfwb.:
1) Ñthdthf lkz ,fkfycbhjdrb yfuheprb b jnlfxb cnfnbxtcrjuj rjyntynf:
CPU Intel Xeon Dual Core 2.67GHz RAM DDR 2 8Gb HDD 4xSAS 73gb 15000 rpm
2) Ñthdthf lkz hfpdthnsdfybz Web-ghbkj;tybz:
CPU 2xIntel Xeon Quad Core 2.66GHz RAM DDR 2 16Gb HDD 4xSATA 300gb 15000 rpm
Ãkfdysq ghbywbg ghb ds,jht cthdthf lkz Web-ghbkj;tybz – xtv ,jkmit zlth/ghjwtccjhjd b jgthfnbdyjq gfvznb – ntv kexit.
3) Ñthdthf lkz ÁÄ:
CPU 2xIntel Xeon Quad Core 2.66 GHz RAM DDR 2 16Gb HDD 8xSAS 147gb 15000 rpm
Ãkfdysq ghbywbg ghb ds,jht cthdthf lkz ÁÄ c hfcxtnjv yf hf,jne c ,jkmibvb j,]tvfvb lfyys[ – xtv ,jkmit lbcrjd b xtv jyb ,scnhtt, ntv kexit. Î,zpfntkmyj yfkbxbt fggfhfnyjuj RAID. Çfntv gj ghbjhbntnfv bltn jgthfnbdyfz gfvznm, pf ybvb – ghjwtccjhs.

Ñthdthf [jcnzncz d lfnf-wtynht rhegyjuj vjcrjdcrjuj bynthytn-ghjdfqlthf pf fggfhfnysv afqhdjkjv jn Cisco.

 pfrk.xtybt [jxtncz crfpfnm, xnj, ytcvjhz yf ,jkmibt j,]tvs ghjltkfyyjq hf,jns, yfv tot tcnm xnj cjdthitycndjdfnm. Ífghbvth, d cdzpb c ds[jljv IE 8 vs yfvtnbkb ,jktpytyysq gtht[jl yf DOJO 1.3. Òfr;t vs gkfybhetv cltkfnm dthcnre cfqnf ,jktt kturjq (e,hfd ntyb, gjkeghjphfxyjcnm b kbiybt jrheukjcnb) d cdzpb c ntv, xnj exfobtcz d htubjyf[ gj afrne bvt.n d irjkf[/depf[ rfyfk d 128Ê,bn/ctr b IÅ 6.  cfvs[ ,kb;fqib[ gkfyf[ htfkbpjdfnm r'ibhjdfybt lfyys[ yf ,fpt ghjdthtyyjuj hfcghtltktyyjuj r'if Memcached. Òfr;t e yfc yf ctujlyziybq ltym yt htity djghjc ifhlbyuf lfyys[, tckb dlheu j,]tv lfyys[ yfxytn euhj;f.ot hfcnb. Ïj'njve d gthcgtrnbdt vs yfvthtys bccktljdfnm Hibernate Shards, PLProxy b lheubt chtlcndf. Åckb e rjuj-nj tcnm ghfrnbxtcrbq jgsn b ;tkfybt bv gjltkbnmcz – ,ele jxtym hfl.

 cktle.otq cnfnmt, tckb gjllth;bnt, z gkfybhe. hfccrfpfnm j, eghfdktybb ghjtrnjv «Êfvgec» b j yfitq rjvfylt ☺

Ñgfcb,j pf dybvfybt!
Òt[ybxtcrbq lbhtrnjh ÎÎÎ «Êhtfnbd Ìtlbf»
Ñthutq Ñtljd
Îge,kbrjdfyj c hfphtitybz Ãtythfkmyjuj lbhtrnjhf rjvgfybb ÎÎÎ «Êhtfnbd Ìtlbf» Èdfyf Ñjrjkjdf
3
Ñîçäàíèå ýêñêëþçèâíûõ ñàéòîâ, þçèáèëèòè àíàëèç è áåñïëàòíûé àíàëèç ïîä çàïðîñû îñíîâíûõ ïîèñêîâûõ ìàøèí
Êîíòàêòíàÿ èíôîðìàöèÿ :
òåë. +7(98I) 7608865

Íàïèñàòü ïèñüìî íà e-mail
icq 415547094  romverðåéòèíã íà mail.ru ñàéòà romverinbox.ru
© 1997 - 2024 romver.ru

Ïîëíàÿ êàðòà ñàéòà Display Pagerank