See artikkel on masintõlke peegelartikkel, palun klõpsake siia, et hüpata algse artikli juurde.

Vaade: 11174|Vastuse: 1

php Vanem programmeerija arhitekti intervjuuküsimused

[Kopeeri link]
Postitatud 23.12.2016 09:10:09 | | |


Hiljuti intervjueerisin järjest mitut ettevõtet ja salvestasin mõned olulised küsimused, sundides end õppima ja arenema ning samal ajal lootes aidata oma sõpru.
Seal on palju sisu, samm-sammult, samm-sammult õppimist.
Mõned küsitakse intervjuudel, mõned on värbamisnõuded ja mõned lisatakse ise.

1. MySQL-iga seotud teadmised
    1. MySQL optimeerimismeetod
            MYSQL optimeerimise levinumad meetodid
            MySQL jõudluse optimeerimise skeem
  
    2. Kuidas jagada andmebaas ja tabelid
           Viide:
   http://blog.sina.com.cn/s/blog_6e322ce70100zs9a.html
           http://www.jb51.net/article/29771.htm

   3. Kuidas teha kahe masina kuumrežiimi ja koormuse tasakaalustamist Mysql+-s
http://www.dewen.org/q/51/Mysql+如何做双机热备和负载均衡
   
   4. Millised on andmetabelite tüübid?
       MyISAM, InnoDB, HEAP, BOB, ARCHIVE, CSV jne
       MyISAM: Küps, stabiilne, lihtne hallata, kiire lugeda. Mõned funktsioonid ei ole toetatud (näiteks tehingud jne), tabelitasandi lukud.
       InnoDB: Toetab tehinguid, võõrvõtmeid ja realukustusi. See võtab palju ruumi ega toeta täisteksti indekseerimist.

       Myisam ja Innodb mootorite peamised omadused:
       Mis on MySQL-i salvestusmootoril MyISAM ja InnoDB?

   5. Anti-SQL süstimismeetod
      mysql_escape_string(strip_tags($arr["$val"]));

   6. Kuidas lahendada risttabeli päringute efektiivsuse probleem pärast seda, kui mysql jagab suure tabeli mitmeks tabeliks

[php] vaata tavalist koopiat
Vaata koodiviile, mis tuletatakse minu koodilõikudest CODE-is

    /**
    * Funktsiooni nimi: post_check()  
    * Funktsioonifunktsioon: Töötleb esitatud muudatusi  
    * Parameeter: $post: Esitatav sisu  
    * Tagastusväärtus: $post: Tagastab filtreeritud sisu  
    */  
    funktsioon post_check($post){  
    if(!get_magic_quotes_gpc()){// Määra, kas magic_quotes_gpc on avatud   
    $post = lisandkriipsud($post); Tee esitatud andmete magic_quotes_gpc filtreerimist ilma avamata   
    }  
    $post = str_replace("_","\_", $post); Filtreeri välja '_'  
    $post = str_replace("%","\%", $post); Filtreeri '%' välja  
    $post = nl2br($post); Sisenemine konverteerimisele   
    $post = htmlspecialchars($post); HTML-märgistuse teisendus   
    Tagasi $post;  
    }  

   7. Indeksi rakendus
         Millal kaaluda indekseerimist
         Millised olukorrad ei sobi indekseerimiseks
         Kuidas hinnata, kas väide kasutab indeksit
        Sagedased olukorrad, kus indekseid ei kasutata:
                nagu '%.....'
                Andmetüüpide implitsiitne teisendus
                või märksõnad pluss muud tingimused
       Täisteksti indeks:
                Saab kasutada ainult MYIsAM tabelite jaoks, mis on loodud veergudele tüübiga CHAR, VARCHAR, TEXT.
      

   8. Kuidas optimeerida MySQL-i suurte tabelite (kümnete miljonite) jaoks?
        Viide http://www.zhihu.com/question/19719997

   9. MySQL aeglane päringuprobleem
  Tegelikult on see suhteliselt lihtne viis analüüsida aeglaste päringulogide kaudu – kui sa ei taha logisid näha, saad tööriistadega selle täitmiseks kasutada.

Näiteks mysqldumpslow, mysqlsla, myprofi, mysql-explain-slow-log, mysqllogfilter jne, tundub, et analüüsimiseks on vaja palju kogemusi ja see on ajaraisk.

10. Kasutaja sisselogimise staatuse eeliste ja puuduste kohta sessiooni, küpsise, andmebaasi või memcache http://www.dewen.org/q/11504/

Kasutaja sisselogimise staatuse, session%2Ccookie, andmebaasi või memcache eeliste ja puuduste osas

  11. Äärmuslikke juhtumeid käsitletakse tehingutes
  12. SQL keel on jagatud neljaks kategooriaks, palun loetle
        DDL--LOO, JÄTA, MUUDA
        DML--INSERT, UPDATE, DELETE
        DQL-SELECT
        DCL--ANDMINE, TÜHISTAMINE, KOHUSTUS, TAGASIPÖÖRAMINE
        

2. PHP põhitõed

      Sessioon

        Mitmed viisid ja erinevused PHP ühendamisel MySQL andmebaasidega
    MySQL: protsessipõhine
    mysqli: objektorienteeritud
    PDO: Kõrge kaasaskantavus
    Palun vaata: PHP Basic seeria: Kolm API-d, mida PHP kasutab MySQL andmebaasidega ühenduse loomiseks

3. PHP Edasijõudnud

    Pikkade ja lühikeste ühenduste kasutamine

    Pistikupesa

    Makseturvalisuse probleemid

    Objektorienteeritud
    Kolm peamist tunnust: kapseldamine, pärilikkus ja polümorfism (meetodi ümberkirjutamine).
    Abstraktne klass: abstraktne, vähemalt üks meetod on abstraktne meetod, mida ei saa instantsierida, määratledes alamklassi ühise liidese.
    Liides: liides, lahenda PHP ühe päriluse probleem, kõik meetodid on avaliku ligipääsu abstraktsed meetodid, muutujaid ei saa deklareerida, ainult konstandeid.
    Klassi pärimine mitme liideste rakendamisel
    klass A laiendab liidese 1, liidese 2..., liidese n() {
          Rakenda meetodeid kõigis liidestes
    }
    LAMP ja LNMP veebilehtede arhitektuuride erinevuste põhjuste analüüs jõudluse erinevustest
    Tõlgendatud ja kompileeritud keelte jõudlusanalüüs, näited.

4. Regulaarsus

      E-posti, HTML, js jne sobitamine

5. Arenduse alus

          Protsesside ja lõimide definitsioonid, eristused ja seosed.
           Protsessi seis: jookse, valmis, oota

6. NoSQL andmebaas
       Memcached, redis, mongodb diferentseeritud ühendused
       3 stseeni täiesti erinevad asjad. 1.memcached: Kui mälus on vahemällu salvestatud üks võtmeväärtus, ei ole objektide vahemällu salvestamise hajutatud vahemälu asendajat; 2. redis: See on algoritmide ja andmestruktuuride kogum, kiire andmestruktuuri operatsioon on selle suurim omadus, toetades andmete püsivust; 3. MongoDB on BSON-struktuur, mis asub RDB ja NoSQL vahel, mis on lõdvem ja paindlikum, kuid ei toeta tehinguid ning seda kasutatakse ainult mitteolulise andmehoidlasena.
     Kas ma võin viidata MongoDB-le või redisele kui alternatiivile memcachedile?

7. Levinumad Linuxi käsud
      Näiteks pehmed lingid

8. Arhitektuuriga seotud

           Enne projekti käivitamist tee stressitest, kui palju üheaegseid paralleelseid on ühe serveri poolt toetatud ja kui palju PV-sid on.

           Serveri ressursside mõistlik jaotus

             CPU:Apache
                   Kõrge koormusega keskkonnas võtab liiga palju ketta IO lugemisi ja kirjutamisi kindlasti palju ressursse ning protsessor võtab paratamatult liiga palju protsessorit.
             Mälu: Mälupank, andmebaasitarkvara
               
             Kõvaketas: failid

           Web2.0 arhitektuuri valik

              MongoDB+Redis või MySQL+Memcached on parem kombinatsioon ning lihtsa loogika jaoks kasutatakse NOSQL-i

           Peamine veebilehe arhitektuur on praegu populaarne
    LAMP、LNMP、LLMP
    Nüüd on võrgus olemas ka LNAMP arhitektuur, mis ühendab nginx ja Apache eelised, kasutades Apache'i PHP laadimiseks, nginx vastutab teiste veebipäringute parsimise eest ning kasutab nginxi ümberkirjutamismoodulit, kuid Apache port ei ole avalikkusele avatud ning paljud Apache moodulid suudavad ressursse vähendada ilma laadimiseta.





Eelmine:Windows PowerShell, et leida ründaja IP
Järgmine:C# tähistab QR-koodi asukoha ekraanil
Postitatud 23.12.2016 21:53:52 |
Sa purustad kõik.
Disclaimer:
Kõik Code Farmer Networki poolt avaldatud tarkvara, programmeerimismaterjalid või artiklid on mõeldud ainult õppimiseks ja uurimistööks; Ülaltoodud sisu ei tohi kasutada ärilistel ega ebaseaduslikel eesmärkidel, vastasel juhul kannavad kasutajad kõik tagajärjed. Selle saidi info pärineb internetist ning autoriõiguste vaidlused ei ole selle saidiga seotud. Ülaltoodud sisu tuleb oma arvutist täielikult kustutada 24 tunni jooksul pärast allalaadimist. Kui sulle programm meeldib, palun toeta originaaltarkvara, osta registreerimist ja saa paremaid ehtsaid teenuseid. Kui esineb rikkumist, palun võtke meiega ühendust e-posti teel.

Mail To:help@itsvse.com