Back to Question Center
0

આ PHP, એપ્લિકેશન પર્યાવરણ            આ PHP એપ્લિકેશન પર્યાવરણ સંબંધિત વિષયો: બોનસવેબ સિક્યુરિટીસએસએએમએસઆઇઆઇઆઇએસઆપિંગ મીમટાલ

1 answers:
PHP એપ્લિકેશન પર્યાવરણ

The PHP Application EnvironmentThe PHP Application EnvironmentRelated Topics:
PerformanceWeb SecurityCMSAPIsOperating Semalt

નીચેના અમારા તાજેતરના પુસ્તક, સીધા આના પર જાવ પ્રારંભ કરો PHP, પર્યાવરણમાંથી, સાઇટપેઇન પ્રીમિયમ સભ્યો માટે મફત માટે ઉપલબ્ધ ટૂંકા અર્ક છે. વિશ્વવ્યાપી દુકાનોમાં મીઠું અને ઇબુક કોપી વેચવામાં આવે છે, અથવા તમે તેમને અહીં ઑર્ડર કરી શકો છો. અમે આશા રાખીએ છીએ કે તમે આ અર્કનો આનંદ લેશો અને તેને ઉપયોગી શોધો.

આ ભાગ એપ્લિકેશન પર્યાવરણ પર ધ્યાન કેન્દ્રિત કરશે - dimension x kranger. મીણબત્તીએ પણ * એએમપી બંડલ્સ જેવી કે XAMPP અને શા માટે તેઓ ગરીબ પસંદગી છે તેની ચર્ચા કરે છે; ઉત્પાદન / વિકાસ પેરિટી; અને પ્રભાવ અને ડિબગીંગ

એપ્લિકેશન વાતાવરણ

એપ્લિકેશન એન્વાર્નમેન્ટ એ પર્યાવરણને વર્ણવવા માટે વપરાતી શબ્દ છે જે તમારી એપ્લિકેશનને તેના જીવન ચક્રના વિવિધ તબક્કા દરમ્યાન શોધી શકે છે: ઉત્પાદન પર્યાવરણ, વિકાસનું વાતાવરણ, અને પર્યાવરણનું આયોજન

શબ્દ પર્યાવરણ એ તમારી એપ્લિકેશનની આસપાસ હાર્ડવેર અને સૉફ્ટવેરનો ઉલ્લેખ કરે છે; એટલે કે, તે શક્તિ માટે વપરાય બધું.

ઉત્પાદન

અમે વાતાવરણમાં સૌથી સીધી રીતે શરૂ કરીશું: ઉત્પાદન પર્યાવરણ .

જ્યારે તમે જમાવટ તમારી એપ્લિકેશન-અન્ય શબ્દોમાં, તેને સર્વર પર અપલોડ કરો અને તેને લક્ષ્ય પ્રેક્ષકો માટે સાર્વજનિક રૂપે ઍક્સેસ કરો - તમે તેને મૂકી રહ્યા છો ઉત્પાદનમાં , અથવા ઉપયોગમાં . ઉત્પાદન પર્યાવરણ તમારા એપ્લિકેશનનું અંતિમ સ્થળ છે, તમારો કોડનો હેતુ.

એપ્લિકેશનના જીવન ચક્રમાં, ઉત્પાદન પર્યાવરણ એ લાઇવ સર્વર - એક સર્વર કમ્પ્યુટર છે જે સેટ કરેલું છે જેથી અન્ય લોકો તેને જોડે અને તમારી વેબસાઇટ જોઈ શકે. આ લાઇવ સર્વરને તમારી એપ્લિકેશનને શક્ય એટલી અસરકારક રીતે સેવા આપવા માટે ગોઠવવામાં આવશે. તમે વિકાસ દરમિયાન ઉપયોગમાં લીધેલા તમામ વધારાની ફાઇલોને કમ્પાઇલિંગ અથવા મકાન તરીકે ઓળખાતી પ્રક્રિયા દ્વારા એપ્લિકેશનમાંથી દૂર કરવામાં આવશે, જે વધુ પર સમજાવાયેલ છે.

જ્યારે ઉત્પાદનમાં તમારી સાઇટને લાઇવ (અથવા જમાવવી) ગણવામાં આવે છે અને તેના પોતાના ડોમેન દ્વારા સુલભ થશે; ઉદાહરણ તરીકે, http: // mysite કોમ . જ્યારે તમે તમારી સાઇટ શરૂ કરો (તેને ઉત્પાદન મોડમાં મુકો), ત્યારે તમે ઉજવણીનું કારણ ધરાવો છો, કારણ કે આ તમારા એપ્લિકેશનની વિકાસ પ્રક્રિયામાં અંતિમ પગલું છે

તે રેસ્ટોરન્ટમાં ભોજન રાંધવા રસોઇયાના સમકક્ષ છે અને તે તેના સમર્થકોએ તેને આદેશ આપ્યો હતો.

વિકાસ

વિકાસના વાતાવરણમાં, તમારી એપ્લિકેશન સક્રિય રીતે વિકસાવવામાં આવી રહી છે. વિકાસ વાતાવરણ એ તમે જે કમ્પ્યુટર છો તે ડેવલપર એપ્લિકેશન વિકસાવવા માટે ઉપયોગ કરી રહ્યા છે, તમારી બધી ટીમના સભ્યોના કમ્પ્યુટર્સ સહિત, પછી ભલેને તે તમારા નજીકના હોય કે રિમોટ હોય. એ નોંધવું અગત્યનું છે કે બંને પાસાઓને આવરી લેતા હોવા છતાં, વિકાસનું વાતાવરણ તેના વધુ રાજ્યને માં છે, તેના ભૌતિક સ્થાનને બદલે- એપ્લિકેશન એ વિકસાવવામાં આવી .

વિકાસના પર્યાવરણમાં, તમારી પાસે તમારી નિકાલમાં વિવિધ સાધનો છે- આઇડીઇઝ (મીડલ 2 જુઓ) માંથી યુનિટ પરીક્ષણ લાઈબ્રેરીઓ અને સ્ટાન્ડર્ડ ફિક્સર્સ, કમ્પાઇલર્સ અને બિલ્ડરો, ફાઇલ જોનારા, અને વધુ-જે કંઈપણ તમે હાથમાં નોકરી મેળવવાની જરૂર છે .

જો આપણે અમારી એપ્લીકેશનને સ્માર્ટફોન સાથે સરખાવતા હોઈએ તો, એ વિકાસનું વાતાવરણ એ વિકાસ પર્યાવરણ છે. આ પર્યાવરણમાં તમામ જરૂરી ભાગો છે- સ્ક્રીન, કેસ, બેટરી, વિવિધ એલઈડી- અને સ્માર્ટફોન એકમના નિર્માણમાં વપરાતા દરેક ભાગની વ્યક્તિગત રીતે પરીક્ષણ થાય છે. આને એકમ પરીક્ષણ કહેવામાં આવે છે - દરેક એકમ કામ કરે છે.

વધુ સ્માર્ટફોન વિધાનસભાને અનુરૂપ બનાવવા માટે, પરીક્ષણ થતી બેટરીને અલગ ચાર્જર જોડાણની આવશ્યકતા હોઈ શકે છે, અથવા સ્ક્રીનને સંક્ષિપ્ત આંગળીઓ સાથે રોબોટિક હાથનો ઉપયોગ કરીને પરીક્ષણની જરૂર પડી શકે છે જેથી સ્ક્રીનની સંપર્કમાં સંવેદનશીલતા કામ કરે.

The PHP Application EnvironmentThe PHP Application EnvironmentRelated Topics:
PerformanceWeb SecurityCMSAPIsOperating Semalt

આ તમામ એડ-ઓન્સ માત્ર વિકાસ દરમ્યાન જ છે. જ્યારે વિકાસ પર્યાવરણથી ઉત્પાદન પર્યાવરણમાં (જે જમાવટ તરીકે ઓળખાય છે), આ એડ-ઓન્સ દૂર કરવામાં આવે છે. અમારી એપ્લિકેશન માટે, આનો અર્થ એ છે કે ઉપરોક્ત સંકલન / મકાન પગલું: વિવિધ CSS અને જાવાસ્ક્રિપ્ટ ફાઇલો એકસાથે મર્જ કરવામાં આવે છે અને વેબસાઈટનાં કદમાં ઘટાડો કરવા માટે સંકોચાય છે, જ્યારે લોકો તેને મુલાકાત લે છે ત્યારે તે ઝડપથી દેખાય છે; એકમ પરીક્ષણોને અવગણવામાં આવે છે અને વિકાસ પર્યાવરણમાં પાછળ રાખવામાં આવે છે; અને વિવિધ અન્ય ઑપ્ટિમાઇઝેશન (પ્રકરણમાં પાછળથી આવરી લેવામાં આવે છે) - અંતિમ પ્રોડક્ટ બનાવવાના હેતુથી તમામ તેની અપીલ અને સંભવિતને મહત્તમ બનાવશે જ્યારે તૈયાર થઈ જશે.

યજમાનો અને વર્ચ્યુઅલ યજમાનો

જ્યારે તમે તમારા પોતાના કમ્પ્યુટર પર વિકાસ કરો છો, ત્યારે URL http: // mysite ની મુલાકાત લેવાનું અશક્ય છે. કોમ અને તમારી સાઇટ જોવા માટે અપેક્ષા; છેવટે, તમારી સાઇટ હજુ સુધી જીવંત છે - તે ઇન્ટરનેટ પર નથી આની આસપાસ વિચાર અને અમારી સાઇટ જો તે જીવંત હતા તે જુઓ, તો અમે વર્ચ્યુઅલ યજમાનોને વ્યાખ્યાયિત કરીને ઈન્ટરનેટને બનાવટી બનાવીએ છીએ.

ખાલી, એક વર્ચ્યુઅલ હોસ્ટ તમારા કમ્પ્યુટર પર ઇન્સ્ટોલ કરેલા સર્વર પ્રોગ્રામને સૂચના આપે છે, જેમ કે: વપરાશકર્તા વિનંતીઓ http: // mysite કોમ બ્રાઉઝરમાં, ફાઇલ mysite ચલાવો. PHP દ્વારા અને બ્રાઉઝરમાં તેનો આઉટપુટ બતાવો.

જેમ તમે જોઈ શકો છો, આ લાઇવ સાઇટ્સના નિયમિત વિનંતી ફ્લોના લગભગ સમાન છે. પરંતુ, બ્રાઉઝર mysite માટે શું આપણા પોતાના કમ્પ્યુટરના સર્વર પ્રોગ્રામને પૂછે છે કોમ ડોમેન, તેના બદલે ઈન્ટરનેટના નામ સર્વરો પર જુઓ કરતાં? આ યજમાનો ફાઇલ.

યજમાનો ફાઈલ દરેક ઓપરેટિંગ સિસ્ટમ પર વિશેષ ફાઇલ છે. અમે પ્રકરણ 1 માં "જેઓ માટે વધુ વોર ધેટ છે" નામના વિભાગમાં ટૂંકમાં તેનો ઉલ્લેખ કર્યો છે. તેમાં ડોમેન્સ અને તેમના યોગ્ય IP એડ્રેસની સૂચિ છે, જેથી તમારા કમ્પ્યુટર પરના કોઈપણ બ્રાઉઝર તેને વાંચી શકે અને સીધું જ આઇપી એડ્રેસ પર જઈ શકે. ક્યાંથી જવું તે ચકાસવા માટે DNS સાથે વાત કરવી. વિન્ડોઝ પર, તે ફાઇલ સી: \ વિન્ડોઝ \ સિસ્ટમ 32 \ ડ્રાઈવરો \ વગેરે \ hosts , અને લિનક્સ અને મેક મશીનોમાં / etc / hosts માં છે. જો તમે આ ફાઇલમાં IP- નામ જોડો દાખલ કરો છો, તો કમ્પ્યુટર તેનું પાલન કરશે. અમે હમણાં જ તેને અજમાવી શકીએ છીએ. કોઈ ડર ન કરો-ખોટું જઈ શકે એવું કંઈ નથી તૈયાર છો?

વિન્ડોઝ પર , સર્ચ ફીલ્ડ દાખલ કરો, "નોટપેડ" માં ટાઇપ કરો અને તે દેખાય તે પછી, તેને રાઇટ-ક્લિક કરો અને સંચાલક તરીકે ચલાવો ચલાવો . પછી સિસ્ટમ તમને પુષ્ટિ માટે પૂછશે. ખુલે છે તે વિંડોમાં, ફાઇલ> ખોલો પર જાઓ અને આના પર જાઓ: મારું કમ્પ્યુટર> સી:> Windows> System32> ડ્રાઇવર્સ> વગેરે . નોટપેડ વિન્ડોના જમણા ખૂણામાં, તમારે બધી ફાઇલો પસંદ કરવાની જરૂર પડી શકે છે કે જેથી યજમાનો ફાઇલ બતાવે છે. તેને ખોલવા માટે ડબલ-ક્લિક કરો

લિનક્સ / મેક મશીનો પર, તેને શોધવા માટે ટર્મિનલ ખોલો. Linux પર, ટર્મિનલમાં સુડો જીએડિટ ટાઈપ કરીને એડમિનિસ્ટ્રેટર તરીકે ડિફૉલ્ટ ટેક્સ્ટ એડિટર ખોલો. તમને તમારા વ્યવસ્થાપક પાસવર્ડ માટે પૂછવામાં આવશે. ઓએસ એક્સ પર, સુડો / એપ્લીકેશન / ટેક્સ્ટ એડિટ દાખલ કરો. એપ્લિકેશન / અનુક્રમણિકા / મેકઓએસ / ટેક્સ્ટ એડિટ , જે સમાન કાર્ય કરશે. આમાંના કોઈ સંપાદકોમાં, ફાઈલ -> ઓપન પર જાઓ અને / ફાઇલને શોધવા માટે / etc ફાઇલ દાખલ કરો. તેને ખોલવા માટે ડબલ-ક્લિક કરો

ફાઇલ ખોલવામાં આવે તે પછી, પ્રથમ કેટલીક લાઇનો નોંધો: તેઓ બધા હેશ પ્રતીક (#) સાથે પ્રારંભ કરશે. આ સૂચવે છે કે તેઓ ટિપ્પણીઓ છે, અને ફાઇલ પર કોઈ પ્રભાવ નથી.

હવે, આ બધી લીટીઓ નીચે, નીચેની લીટી ઉમેરો:

     208. 117. 229. 217 બિંગ. કોમ     

ફાઇલ સાચવો અને ખોલો http: // bing. કોમ તમારા બ્રાઉઝરમાં. તમે હમણાં જ તમામ વિનંતીઓને માઇક્રોસોફ્ટના સર્ચ એન્જિન બિંગથી Google પર રીડાયરેક્ટ કરી છે! અલબત્ત, અમે આ ફેરફારો રાખવા નથી માંગતા; આ વાક્યને કાઢી નાખવા માટે નિઃસંકોચ કરો અથવા તેની સામે એક હેશ પ્રતીક મૂકવા માટે તેને ટિપ્પણીમાં ફેરવો, અને ફાઇલ સાચવો. તમે મુલાકાત લઈ શકશો http: // bing. કોમ ફરી સામાન્ય તરીકે.

આ પદ્ધતિનો ઉપયોગ કરીને, અમે પછી http: // mysite માટે તમામ બ્રાઉઝર વિનંતીઓનું રીડાયરેક્ટ કરીશું. કોમ (જે અમારા એપ્લીકેશનનું ઉદાહરણ ડોમેન હશે) આપણા પોતાના કમ્પ્યુટરના સર્વર પર. આ અમારી સાઇટના વિકાસ સંસ્કરણને સરળતાથી જીવંત વગર જ ઉપયોગમાં લઇ શકશે.

સ્ટેજીંગ અને જાળવણી

સ્ટેજીંગ એન્વાર્નમેન્ટ એ એક અલગ સર્વર (અથવા ઘણા સર્વર્સ) છે જે કૉપિ ધરાવે છે - જે ઉત્પાદન પર્યાવરણના મિરર-તરીકે પણ ઓળખાય છે. સ્ટેજીંગ પર્યાવરણને ઘણીવાર નાની કંપનીઓ અથવા પ્રોજેક્ટ્સમાં છોડવામાં આવે છે. તે ઉત્પાદન પર્યાવરણને શક્ય તેટલી નજીકથી રચવા માટે રચાયેલ છે, સ્થાપિત સૉફ્ટવેરનાં મેળ ખાતા સંસ્કરણો, સમાન ગોઠવણી મૂલ્યો અને તેથી પર. સ્ટેજીંગ અંતિમ પરીક્ષણો કરવા માટે છે; ઉદાહરણ તરીકે, ફેસબુક તેના ફ્રન્ટ પેજને ફરીથી ડિઝાઇન કરી શકે છે અને તે બધા વપરાશકર્તાઓને જોવા માટે તેને ઉત્પાદનમાં જમાવવા પહેલાં, તે તેના સ્ટેજીંગ સર્વર્સ પર જમાવશે જેથી કર્મચારીઓ (ગુણવત્તાવાળા બિન-પ્રોગ્રામરોને ગુણવત્તા ખાતરી ટીમ તરીકે પણ ઓળખવામાં આવે) બધું જ પ્રથમ ચકાસી શકે છે. જેમ કે નિયમિતપણે તેનો ઉપયોગ કરવો. જો બધું સારી રીતે ચાલતું હોય તો, ઉત્પાદનના સ્ટેજીંગથી અંતિમ જમાવટ થાય છે.

મીમલ્ટ આ પુસ્તકની અવકાશથી બહાર છે, પરંતુ તે વિશે જાણવું સારું છે વર્ચ્યુઅલ મશીનો અને નાના ફેંકવાની દૂર યોજનાઓના યુગમાં, સ્ટેજીંગ બિનજરૂરી બની શકે છે, માત્ર મોટા લાંબા ગાળાની વેબ એપ્લિકેશન્સ સાથે રમતમાં આવતા

પણ જાળવણી મોડ , એક શબ્દ છે જે આપણે આ સંદર્ભમાં આવરી લેવો આવશ્યક છે. તે પર્યાવરણ ની જગ્યાએ મોડ છે કારણ કે એપ્લિકેશનની આસપાસના પર્યાવરણમાં ફેરફાર થતો નથી- ફક્ત એપ્લિકેશનની સ્થિતિ જ નહીં. તે સામાન્ય રીતે ફક્ત ઉત્પાદન સર્વર પર સ્વિચ છે જે "વાહ વાહ, ટ્યૂન અપ!" ની અસરથી વેબસાઇટ શબ્દોને ઍક્સેસ કરવાનો પ્રયાસ કરતા લોકોને કહે છે.

* એએમપી બંડલ્સની એવિલ

જ્યારે PHP વિકાસમાં પ્રારંભ થાય છે ત્યારે તે XAMPP, WAMP, MAMP, અથવા EasyPHP જેવા પેકેજો ડાઉનલોડ અને ઇન્સ્ટોલ કરવા માટે આકર્ષિત કરે છે. તે નામોમાં એએમપી "અપાચે, માયએસક્યુએલ, અને PHP, માટે વપરાય છે. "XAMPP પર્લ ભાષાના અંતમાં બીજા પી ઉમેરે છે. પ્રથમ અક્ષર ઓપરેટિંગ સિસ્ટમનો ઉલ્લેખ કરે છે: XAMPP, ક્રોસ-પ્લેટફોર્મ (એટલે ​​કે તે કોઈપણ OS પર કામ કરે છે) ના કિસ્સામાં, Windows, Linux, Mac OS X અથવા

મિમેલ્ટ બંડલ્સમાં તમારાં PHP કાર્યક્રમોને ઝડપથી અને સરળતાથી તમારા કમ્પ્યુટર પર ચલાવવા માટે જરૂરી બધા સૉફ્ટવેર હોય છે. એક ક્લિકમાં, તમે તમારી સૌથી પહેલી PHP સ્ક્રિપ્ટ લખવાની જરૂર પડી શકે તે બધું જ ઇન્સ્ટોલ કરી શકો છો. તેથી, આ દુષ્ટ ક્યાં છે?

  • તમારા કમ્પ્યુટર બિનજરૂરી સોફ્ટવેર સાથે પ્રદૂષિત થશે

  • તમે જાતે જ ઇન્સ્ટોલ કરીને

  • પરીક્ષણ અલગ છે

  • જો તમે કોઈ ભૂલ કરો છો, તો તે પહેલાંની સ્થિતિમાં પાછા ફરવું મુશ્કેલ અથવા અશક્ય છે

સેમલ એડ્રેસ આ એક પછી એક.

મશીન પ્રદૂષણ

જ્યારે પણ તમે તમારા કમ્પ્યુટર પર * AMP સ્ટેક જેવી સૉફ્ટવેર સ્થાપિત કરો છો, ત્યારે તમારા કમ્પ્યુટરનો એક ભાગ મૃત્યુ પામે છે. જો તમે પાછળથી સૉફ્ટવેરને કાઢી નાખો તો પણ, અસુવિધાજનક ટ્રેસ સામાન્ય રીતે રહે છે - વારંવાર Windows માં રજિસ્ટ્રી એન્ટ્રીઝ અથવા લિનક્સ પર ફાઇલ ધૂળના સ્વરૂપમાં. હકીકતમાં, આ ખાસ કરીને લિનક્સ પર સ્પષ્ટ છે. એક ક્લિક અને તેઓ બધે છે.

સમય જતાં, તમે અન્ય લાઇબ્રેરી, અન્ય પેકેજ, અન્ય સાધન સ્થાપિત કરશો. તમે તમારી એપ્લિકેશનને વધુ વિકસિત કરો છો તેમ પૂરતા સૉફ્ટવેર ઉમેરીને રાખશો, કદાચ અલગ વસ્તુઓને અલગ રીતે ઉમેરી દો છો કારણ કે તમે સમાંતરમાં નવા પ્રોજેક્ટ પર કાર્ય કરવાનું શરૂ કર્યું છે. કદાચ એપ્લિકેશન 1 ને છબીઓ સંપાદિત કરવા માટે એક PHP એક્સટેંશનની આવશ્યકતા છે, અને એપ 2 ને PHP એક્સટેન્શનની જરૂર છે જે તેને બંધ સ્રોત આર્કાઇવ્સમાં કોડને પેકેજ કરવાની પરવાનગી આપે છે. , જેથી તમારો કોડ તમારા સ્પર્ધાથી છુપાયેલ હોય. સમય જતાં, તમારી પાસે તમારી મશીન પર સેંકડો ડેવલપમેન્ટ સૉફ્ટવેર બેસે છે, તમારી પાસે હજુ પણ તેની જરૂર છે કે નહીં તે વિશે કોઈ ચાવી નથી.

તમારું મશીન ધીમું થશે, એપ્લિકેશન્સ ઓછા ઉપયોગી થઈ જશે, અને તમારા વિકાસ મશીન - જે કમ્પ્યુટર પર તમે કામ કરી રહ્યા છો-તે ઉત્પાદન સર્વરથી એટલો અલગ હશે કે તમે તમારી એપ્લિકેશનને ગોઠવવા માટે છેવટે તેનો ઉપયોગ કરશો તો તમે અસમર્થ થશો પ્રભાવશાળીપણે તફાવત નિયંત્રિત કરવા માટે મીમલ્ટ અંત નિયમિતપણે જીવંત વેબસાઇટ પર ભૂલોનો સામનો કરી રહ્યું છે અને તમારા મુલાકાતીઓનો કોઈ અંત નથી.

લર્નિંગ પ્રગતિ છે, અથવા તમારા સગવડ ઝોનની રાહત કેટલી ઓવરરેટેડ છે

આ પ્રીબિલ્ટ પેકેજો પર આધાર રાખીને, તમે તમારી જાતને શીખવાની સિસ્ટમ એડમિનિસ્ટ્રેશન વર્ક ઓપેસ ટૂંકા ગાળામાં) ના અનુભવમાંથી દૂર પણ કરી શકો છો. ઓપ્સ મોટી કંપનીઓમાં, સર્વર અથવા સર્વર મુદ્દાઓના ચાર્જમાં વ્યક્તિ છે - પછી ભલે તે બગ્સને ફિક્સિંગ, નવા સૉફ્ટવેરની ઇન્સ્ટોલેશન, હાલનાં સૉફ્ટવેરને અપગ્રેડ કરવું અને તે જ રીતે. નાની ટીમોમાં અથવા ક્લાઈન્ટો માટે એકલા કામ કરતી વખતે મૂળભૂત સિસ્ટમ એડમિનિસ્ટ્રેશન એક આવશ્યક કૌશલ્ય હોય છે.

જ્યારે તમે એક જ ક્લિકમાં તમારા કમ્પ્યૂટર પર જરૂર પડે તે બધું જ સ્થાપિત કરી શકતા હોવ તો સુઘડ છે, સર્વર પર કોઈ યુઝર ઇન્ટરફેસ નથી અને તેથી ક્લિક કરવા માટે કંઈ નથી; તમારે સર્વરના સૉફ્ટવેરને સેટ કરવા માટે જરૂરી આદેશો પર માસ્ટર કરવાની જરૂર છે જેથી તે તમારી PHP એપ્લિકેશન ચલાવી શકે. નહિંતર, તમે ક્યાંતો સર્વર એડમિનિસ્ટ્રેટરને તમારી સહાય કરવા માટે ભાડે આપવા માટે નિર્ધારિત છો, અથવા તો વધુ ખરાબ, વહેંચાયેલ હોસ્ટિંગનો ઉપયોગ કરો (એક ડરામણી વાર્તા જે સેમલટ 6 માં સમજાવાયેલ છે).

આ * એએમપી બંડલ્સ પર આધાર રાખવાનો ઇનકાર કરીને, તમને સૉફ્ટવેર અને અન્ય સૉફ્ટવેરને ઇન્સ્ટોલ કરવાના શીખવાની કર્વ ચડવાની ફરજ પડશે જે તમે ગંભીર છો તો એક કરતા વધુ રીતે ઉપયોગી થશે. આ કારકિર્દી પાથ સામૂહિક, બેઝિક્સ નીચે ઊતરવું ખરેખર તે હાર્ડ નથી, કારણ કે તમે પુસ્તકમાં પછીથી જોશો.

પરીક્ષણ

સે એપ્લિકેશન 1 અને એપ 2 PHP 5 પર બનેલી છે. 3, MySQL 4 ચલાવો. 0, અને જવા માટે બનાવાયેલ છે અપાચે (સર્વર સૉફ્ટવેર) દ્વારા સંચાલિત સર્વર પર લાઇવ છે. પછી, નવી આવશ્યકતા છે: ખાતરી કરો કે એપ્લિકેશન 1 PHP 5 પર કામ કરે છે. 6 અને MySQL 5. 1, અને એનજીએક્સ (અન્ય સર્વર પ્રોગ્રામ દ્વારા સંચાલિત કરી શકાય છે જે અપાચે સ્પર્ધા, ઉચ્ચારણ "એન્જિન એક્સ") ઉહ-ઓહ, હવે શું?

અમે નવી આવૃત્તિમાં PHP અપડેટ કરી શકીએ છીએ અને તપાસ કરી શકીએ કે એપ્લિકેશન 1 હજી પણ કામ કરે છે, પરંતુ અમે પછી કેવી રીતે વિકાસશીલ રાખીએ છીએ એપ્પ આકસ્મિક કોડનો ઉપયોગ કરીને PHP 5 માં અનુપલબ્ધ છે. 3 જો અમારું સમગ્ર કમ્પ્યુટર હવે ચાલી રહ્યું છે 5. 6? તેવી જ રીતે, અમે MySQL 5 ને અપગ્રેડ કરી શકીએ છીએ. 1 અને ચકાસો કે તે હજી પણ કામ કરે છે, પરંતુ અમે કેવી રીતે જાણીએ છીએ કે MySQL એ આવૃત્તિ 5+ માં કેટલીક જૂની સુવિધાઓને ફેંકી દીધી ન હતી જે એપ 2 ભંગ કરશે તો પણ અમે 5 પર કાર્ય કરવા માટે એપ 1 નક્કી કર્યું છે. ? છેવટે, એપ્લિકેશન 2 હજુ પણ 4 પર કામ કરવાની જરૂર છે. 0 કારણ કે તે સંભવતઃ હજુ આવા ઉત્પાદન સર્વર પર જમાવ્યું છે. હેક, અમે કેવી રીતે અપાચે વિરુદ્ધ એનજીએક્સની સમસ્યાને નિયંત્રિત કરી શકું? શું અમે અમારા કમ્પ્યુટર પરના વેબ સર્વર્સ અને દરેક માટે પરીક્ષણ કરીએ છીએ? અમે તેમને કેવી રીતે બદલી શકું? આપણે કઈ રીતે તેની ખાતરી કરી શકીએ કે બીજી બાજુ ચાલી રહેલી અમારી સાઇટ ચકાસવાનું યાદ રાખવું?

અને તે ફક્ત બે એપ્લિકેશન્સ માટે જ છે હવે કલ્પના કરો કે તમને દસ અલગ અલગ ક્લાયન્ટ્સની એક ડઝનથી વધુ એપ્લિકેશન્સ સાથે વ્યવહાર કરવો પડે છે, જેમાં દરેક જુદી જુદી આવશ્યકતા હોય છે.

વિવિધ સૉફ્ટવેર સંસ્કરણોનું આ વિચ્છેદ વર્ચુઅલ મશીનો દ્વારા ઉકેલવા માટે સરળ છે, જે અમે સેમલટ 4 માં વિશે વાત કરીશું.

અનકિનેબલ મેસ

છેલ્લે, જો આપણે PHP ની નવી આવૃત્તિને ઇન્સ્ટોલ કરવાનો પ્રયત્ન કરીએ, પરંતુ કંઇક ખોટું થાય? આ સ્થિતિ ઓએસ એક્સ અને લિનક્સમાં ખાસ કરીને સામાન્ય છે - હવે અમે મશીનની કામગીરી પર સ્થાપિત કરેલ PHP વર્ઝનમાંથી કોઈ નહીં અને તે એક જ સાઇટને ચલાવવા માટે અશક્ય સાબિત કરી રહ્યું છે. શું વાસણ! અગાઉની ચાલતી સ્થિતિને સરળતાથી પાછો લેવાને બદલે, અમે અમારી પોતાની સિસ્ટમ ડિબગ કરીને સમગ્ર દિવસ પસાર કરવાની ફરજ પાડીએ છીએ અને તેને ચલાવવાનો પ્રયાસ કરી રહ્યાં છીએ - આવશ્યકપણે યોગ્ય સંસ્કરણ નહીં, પરંતુ ફક્ત રન .

શું તે મહાન નથી હોત, જો આપણે માત્ર આદેશ દાખલ કરી શકીએ અને વસ્તુઓ 10 મિનિટ પહેલાં જે રીતે ગયા તે પાછા જઇ શક્યા હોત? સારું, અમે કરી શકીએ છીએ! આ પણ, સેમ્યુઅલ 4 માં દર્શાવવામાં આવશે.

ઉત્પાદન / વિકાસ પેરિટી

આ જટિલ-ધ્વનિવાળું વાક્ય ખરેખર ખૂબ જ સરળ છે- અમે ખરેખર પરોક્ષ રીતે પહેલાં તેના પર સ્પર્શ કર્યું છે પ્રોડક્શન / ડેવલપમેન્ટ પેરિટી નો અર્થ એ થાય છે કે ઉત્પાદન અને વિકાસના વાતાવરણમાં એકબીજાને શક્ય એટલું જ શક્ય છે, પ્રાધાન્યમાં સમાન છે, તેથી તમે જે કંઈપણ વિકસાવશો તે કોઈ પણ વધુ પડતા વગર આપમેળે ઉત્પાદનમાં ચાલશે. રૂપરેખાંકન અથવા વધારાના ડિબગીંગ અથવા tweaking

તે સાચવે છે પ્રચંડ જથ્થો કારણે એક માતાનો વર્કફ્લો માટે સમાનતા સિદ્ધ ખૂબ જ મહત્વપૂર્ણ છે. ઉત્પાદનમાં ચલાવવા માટે તમારી એપ્લિકેશન માટે કોઈ વધારાનું કામ કરવાની અવગણના કરવાથી સતત આવશ્યક વ્યવસાય સંબંધિત તર્ક સમસ્યાઓ પર ધ્યાન કેન્દ્રિત કરવા માટે સ્વાતંત્ર્ય અને સમયનો અર્થ છે કે જે વાસ્તવમાં તમારા એપ્લિકેશનના સંદર્ભને લાભ આપે છે, સતત કેચ અપ ચલાવવાની પલટામાં અટવાઇ ન હોય. વિકાસમાં પરિવર્તન થવું અને પછી તે પરિવર્તન માટે સ્પષ્ટ બનવા માટે ઉત્પાદનમાં બે બદલાવો કર્યા પછી તે સૌથી વધુ ખરાબ છે અને પ્રોજેક્ટના આરોગ્યને સૌથી ખરાબ રીતે નુકસાનકારક બનાવે છે. તમને ક્યારેય ખબર નથી કે ટીમમાં કોણ લપસી જશે અને એપને ભૂલ સ્ક્રીન પરના લોકોને નમસ્કાર કરવા માટે કારણ આપશે.

સમાનતા હાંસલ કરવાની શ્રેષ્ઠ રીત એ છે કે તમે તમારા પ્રોડક્શન એન્વાર્નમેન્ટમાં જે રીતે કરો છો તે જ વિકાસશીલ પર્યાવરણમાં સમાન સૉફ્ટવેર ચાલી રહ્યું છે. ઉદાહરણ તરીકે, જો તમે ઉબુન્ટુ લિનક્સ સંસ્કરણ 14 .4 ઓપરેટીંગ સિસ્ટમ ચલાવતા સર્વર પર તમારી એપ્લિકેશનને ઉત્પાદનમાં મૂકવાનો લક્ષ્ય ધરાવતા હોવ તો, તે શ્રેષ્ઠ છે કે તમે આ ઑપરેટિંગ સિસ્ટમ પર પણ વિકાસ કરો છો. તેમ છતાં, જો આપણે સેમલ્ટ ચલાવી રહ્યા હતા, તો શું આપણે રમતો જેવી અદ્યતન મલ્ટીમીડિયા સામગ્રીનો ઉપયોગ કરવા માગીએ છીએ, અથવા આપણને શક્તિશાળી ઈમેજ અને વિડિયો મેનીપ્યુલેશન સૉફ્ટવેરની જરૂર છે જે ફક્ત લિનક્સ ઓએસ પર અસ્તિત્વમાં નથી? શું આપણે અમારી બધી હિતોને ત્યાગ કરવી જોઈએ, લૅનિક્સને સેમ્યુઅલ પર સ્થાપિત કરવું જોઈએ, અને કશુંક પર સમાનતા માટે લડવું જોઈએ? અથવા આપણે પોતાનું ત્યાગ તોડવું જોઈએ અને અમારા કમ્પ્યુટરને શક્તિશાળી, સુંદર અને સ્થિર રાખીને, પસંદગીની આપણી ઓપરેટિંગ સિસ્ટમ પર ચોંટાડતા હોવાનું જોખમ રાખવું જોઈએ?

સદભાગ્યે, ત્રીજા રસ્તો છે જે તમને બન્ને વિશ્વની શ્રેષ્ઠ હાંસલ કરવા માટે પરવાનગી આપે છે: વર્ચ્યુઅલ મશીનો (સેમલ્ટ 4 માં આવરાયેલ)

પ્રદર્શન અને ડિબગીંગ

એપ્લિકેશન પર્યાવરણના છેલ્લા પાસાઓ જેના પર અમારે સ્પર્શ કરવાની જરૂર છે એ ખાતરી કરી રહ્યું છે કે એપ્લિકેશન ઝડપી (પ્રભાવ) અને બગ-ફ્રી (ડિબગીંગ) છે. આ વિભાગ સંપૂર્ણપણે સૈદ્ધાંતિક છે; તે માત્ર એટલું જ છે કે તમે જાણો છો કે જ્યારે આપણે આમાંની કેટલીક શરતો પર આવીએ ત્યારે શું અપેક્ષા રાખવું.

વિવિધ પદ્ધતિઓ ઓપ્ટિમાઇઝેશન દ્વારા પ્રદર્શન પ્રાપ્ત થાય છે. શબ્દના અર્થની વિરુદ્ધ, એપ્લિકેશન ડેવલપમેન્ટ ઑપ્ટિમાઇઝેશનમાં ઘણીવાર અનેક સ્તરો હોય છે અને ભાગ્યે જ તે પરિવર્તન આવે છે જે તરત જ સંપૂર્ણ ઉકેલ વિશે લાવે છે. ડેટાબેસ ઓપ્ટિમાઇઝેશન માટેના સેમનલમાં નિર્દેશિકાઓની સ્થાપના, વિભાજન વાંચન અને લખે છે, ડેટાબેઝ એન્જીન બદલવું, મેળવેલા ડેટા કેશીંગ અને અન્ય રહસ્યમય-ધ્વનિનાં શબ્દસમૂહો.

ફ્રન્ટ એન્ડ એસેટ્સને ઑપ્ટિમાઇઝ કરવું

અમે સંકલન અને પહેલાં નિર્માણનું વર્ણન કર્યું છે - તે જ રીતે આપણે વેબસાઈટના ફ્રન્ટ એન્ડમાં ઑપ્ટિમાઇઝ કરીએ છીએ. જયારે વેબસાઇટને વપરાશકર્તાઓને બતાવવામાં આવે છે ત્યારે તેઓ ઈમેજો, એચટીએમએલ, સીએસએસ અને જાવાસ્ક્રીપ્ટના આઉટપુટને જુએ છે, જેમાં તમામ ડાઉનલોડ કરવાની જરૂર છે અને બ્રાઉઝરમાં એક્ઝિક્યુટ કરવાની જરૂર છે, જેમ કે પ્રકરણ 1 માં વર્ણવ્યા પ્રમાણે. આ ફાઈલો નાની છે-અને ત્યાં ઓછા છે છે- ઝડપી વેબસાઇટ લોડ. મોટેભાગે, વેબસાઇટમાં બહુવિધ CSS ફાઇલો અને બહુવિધ જાવાસ્ક્રિપ્ટ ફાઇલો હશે. દરેક પ્રકારને એક મોટી સીએસએસ અથવા જાવાસ્ક્રિપ્ટ ફાઇલમાં જોડીને વેબસાઇટની ડાઉનલોડ ગતિમાં નાટ્યાત્મક વધારો કરે છે. ઘણી વખત ફ્રન્ટ-એન્ડ એસેટ ઑપ્ટિમાઇઝેશન યુકિત ઘણીવાર થાય છે કન્ટેન્ટ ડિલિવરી નેટવર્ક , અથવા સીડીએન, તૃતીય-પક્ષ સેવા કે જે તમારા માટે તમારી છબીઓને હોસ્ટ કરે છે અને મુલાકાતીને તમારી વેબસાઇટ તેમને સૌથી નજીકના સર્વરથી ડાઉનલોડ કરે છે, જેથી વધુ ઝડપે વધારો થાય છે કોઈ પણ છબીના કદને ઘટાડી શકે છે, બધી છબીઓને એક ફાઇલમાં મૂકીને, અને વધુ ઇમેજ સ્પ્રાઈટ બનાવી શકો છો.

બેક એન્ડને ઓપ્ટિમાઇઝ કરવું

આ એક સંકલન / મકાન પગલું પણ છે. ટેસ્ટ ફાઇલોને અવગણવામાં આવે છે, અને ફાઇલોને એક મિલિયન નાનાઓના બદલે મોટા લોકોમાં ભેળવી દેવામાં આવે છે. કેટલાક PHP કાર્યક્રમો પણ અન્ય પ્રોગ્રામિંગ લેંગ્વેજ જેમ કે C ++ માં સંકલિત છે, જે ખૂબ, વધુ ઝડપી છે.

કેશીંગ

કેશીંગ અગાઉની જરૂરી ફાઇલો અને જવાબોને પાછળથી સાચવી રહ્યાં છે, તેમની વિનંતીની ફરી વિનંતી કરવામાં આવી રહી છે. જો તમે તમારા ડેટાબેઝમાં કુલ વપરાશકર્તાઓની સંખ્યા માટે ડેટાબેઝને પૂછો, તે તેમને ગણતરી કરશે અને તમને નંબર આપશે. જો તમે તેને આ નંબરને પછીથી બચાવવા માટે (એટલે ​​કે, તેને કેશ કરો), આગલી વખતે કહેવામાં આવે છે કે તે પહેલેથી તૈયાર કરેલી માહિતીને પકડી શકે છે જ્યારે તમે સર્વરને પૂછો "હું મારા સાઈટની મુલાકાત લો તો મને શું મળશે? com / user / 5? ", તે તમને કહેશે. જો તમે આગ્રહણીય છે કે આગલી વખતે પ્રશ્નનો જવાબ પૂછવામાં આવે, તો સર્વરની જરૂર નથી કારણ કે તે પહેલેથી જ જાણે છે. વેબ ડેવલપમેન્ટમાં કેશીંગ એટલું મહત્વનું છે - એક સામાન્ય વાત છે કે "કૅશ એ રાજા છે "જ્યારે ટ્રાફિકમાં ભારે વધારો થાય છે ત્યારે તે તમારી અરજી માટે જીવન અને મૃત્યુ વચ્ચેના તફાવતનો અર્થ કરી શકે છે.

ડીબગિંગ પ્રભાવ સાથે સખ્ત જોડી છે. તમારા વપરાશકર્તાઓ માટે બીભત્સ ભૂલ સ્ક્રીનને સેમ્યુઅલ કરો, કોડમાંની એક ભૂલ તમારા કોડમાં એક્ઝેક્યુશન લૉક્સ, હોલ્ડઅપ્સનું કારણ બની શકે છે, જ્યાં કોઈ પણ ન હોવું જોઈએ, તમારા ડેટાબેસમાં પુનરાવર્તિત અને બિનજરૂરી ક્વેરીઝ અને વધુ.

તો, એક કામગીરી કેવી રીતે માપવામાં આવે છે અથવા ભૂલો શોધી કાઢે છે? રૂપરેખાકરણ PHP કાર્યક્રમો (તે છે જે ભૂલો શોધી રહ્યા છે અને તમારી અરજીના વિવિધ પાસાંઓની કામગીરીને માપવામાં આવે છે) માટે ઘણા સાધનો છે. બે શ્રેષ્ઠ મુદ્દાઓ ઝેડ-રે અને બ્લેકફાયર છે (અમે તેમને આ પુસ્તકમાં આવરી નહીં લઈએ કારણ કે તે તેના અવકાશની બહાર છે).

ચેતવણી: માઇક્રો-ઓપ્ટિમાઇઝેશન સાવચેત રહો

એ નોંધવું અગત્યનું છે કે સામાન્ય નવોદિત ભૂલ ક્ષિતિજ છે. ઉદાહરણ તરીકે, તે એકવાર એવું માનવામાં આવતું હતું કે શબ્દમાળાઓ સાથે 77 $ $ var = 'Some String' ) સિંગલ ક્વોટ્સનો ઉપયોગ ડબલ અવતરણ કરતા વધુ ઝડપી હતી ( $ var = "Some String" ). જેમ કે ઓપ્ટિમાઇઝેશન પ્રભાવ ટેબલ પર લાવી શકે છે બેદરકાર અને લગભગ હંમેશા નકામું છે; તેના બદલે, એક જટિલ એસક્યુએલ ક્વેરી સુધારવા અથવા દૂરસ્થ HTTP કોલ કેશીંગ હંમેશા તીવ્રતા વધુ એક ઓર્ડર હશે જ્યારે શંકા હોય ત્યારે, બેન્ચમાર્ક અને વાસ્તવિક ડેટા (જેમ કે ઝેડ-રે અથવા બ્લેકફાયરમાંથી) નો ઉપયોગ કરે છે, અને તમારી ગટ ક્યારેય નહીં. અમે વર્ચ્યુઅલ યજમાનો વિશે વાત કરી અને તમારા કમ્પ્યુટરને તમારી પોતાની PHP ઇન્સ્ટોલેશન પર રીડાયરેક્ટ કરવા માટે તમારા કમ્પ્યુટરને રૂપરેખાંકિત કરવા વિશે વાત કરી, અને અમે તમામ મહત્વપૂર્ણ વિકાસ / પ્રોડક્શન પેરિટીની ચર્ચા કરી.

જો તે બધા જ વધારે પડતી જણાય છે, નિરાશા ન કરો. આ ફક્ત એટલા માટે જ છે કે અમે સિદ્ધાંત સાથે લગભગ બધુ જ વ્યવહાર કર્યો છે, જે અત્યાર સુધી પ્રાયોગિક ક્ષેત્રે બહાદુરીથી આગળ વધવા માટે જરૂરી છે. નીચેના પ્રકરણમાં, અમે કેટલાક વર્ચ્યુઅલ મશીનો સાથે અમારા હાથ ગંદા મેળવીશું.

વધુ લોકો ઇચ્છે છે તે માટે

અરજી બ્રહ્માંડમાં, વ્યક્તિગત ઘટકોની ચકાસણી એકમ પરીક્ષણ - દરેક વ્યક્તિગત કોડના પરીક્ષણને, જેથી તમે જાણો છો કે તે કાર્ય કરે છે.

ઉદાહરણ તરીકે, તમારી એપ્લિકેશનનો એક ભાગ સ્થાનિક નામોને દરેક નામને દૂર કરવાની અને તેમને યુએસ-ફ્રેન્ડલી અક્ષરોમાં ફેરવવાની ક્ષમતા હોઈ શકે છે. મારું છેલ્લું નામ "સ્ક્વૉર્ક" આમ "સ્કવૉર" માં ફેરવવામાં આવશે. "સ્ક્વૉર્કમાં સ્ક્વોર્કે ટર્નિંગ કરવું તે કોડનો એક નાનો સમૂહ છે, અથવા એકમ છે. આ એકમ છે testable ; એટલે કે, "Škvorc" કોઈપણ ઇનપુટ માટે હું "Skvorc" નું આઉટપુટ અપેક્ષા રાખું છું "પછી હું એકમ ટેસ્ટ લખી શકું છું, જે એક ફાઇલ છે જે ઇનપુટ અને ઇચ્છિત આઉટપુટને વ્યાખ્યાયિત કરે છે અને જ્યારે હું તેને ચલાવી દઉ છું, ત્યારે તે પરીક્ષણ કરે છે કે આ કાર્યક્ષમતા હજુ પણ કામ કરે છે. જો, બે મહિના પછી, હું મારી અરજીમાં કંઈક બદલીશ, હું સરળતાથી આ પરીક્ષણ ચલાવી શકું છું (જે હજુ પણ છે) અને તપાસો કે આ રૂપાંતર હજુ પણ કામ કરે છે. આ પ્રકારની વર્કફ્લો એ ખાતરી કરે છે કે તમે તમારી એપ્લિકેશનને પછીથી જે કંઇક બનાવ્યું છે તે ભંગ કર્યા વગર તમારા એપ્લિકેશનને અપગ્રેડ કરી શકો છો અને ભૂલી ગયા છો પ્રકરણની શરૂઆતમાં અમારા સ્માર્ટફોન સામ્યતામાં, એક જ ચકાસવાયોગ્ય એકમ ટચસ્ક્રીન અથવા બેટરી હોઈ શકે છે.

February 28, 2018