Maison  >  Article  >  Saison de recrutement 2017 : Super résumé des questions d'entretien PHP !

Saison de recrutement 2017 : Super résumé des questions d'entretien PHP !

大家讲道理
大家讲道理original
2018-05-11 13:50:5521384parcourir

Il fait chaud et c'est la haute saison annuelle du recrutement informatique. Comme le dit le proverbe, il y a trois médailles d'or et quatre d'argent. Chaque entreprise recrute activement, et tous ceux qui recherchent un emploi ou changent d'emploi en recherchent également un. Lorsque vous entrez dans une bonne entreprise, vos compétences sont les plus importantes, mais vos compétences d'application ne peuvent être ignorées. Le site Web chinois PHP a résumé des questions d'entretien PHP complètes pour votre référence ! (Saison de recrutement 2017 : comment sont les salaires et avantages PHP ?)

Questions d'entretien PHP de base

1. les guillemets et La différence entre les guillemets simples

  • Les guillemets doubles interprètent les variables, les guillemets simples n'interprètent pas les variables

  • Insérer des guillemets simples à l'intérieur des guillemets doubles, où si S'il y a une variable, l'explication de la variable

  • Le nom de la variable entre guillemets doubles doit être suivi d'un caractère spécial autre qu'un chiffre, une lettre ou un trait de soulignement, ou la variable doit être entouré de {}, sinon la partie après le nom de la variable est traitée dans son ensemble, provoquant des erreurs de syntaxe

  • Les guillemets doubles interprètent les caractères d'échappement. , mais interpréter ' et \

  • peuvent faire en sorte que les guillemets simples utilisent autant que possible des guillemets simples. Les guillemets simples sont plus efficaces que les guillemets doubles (car les guillemets doubles doivent d'abord être traversés pour déterminer. s'il y a des variables avant de fonctionner, alors que les guillemets simples ne le sont pas. Besoin de juger)

2 Variables super globales couramment utilisées (8)

  • <.>$_GET ----->obtenir la méthode de transmission

  • $_POST ----->méthode de transmission post

  • $_REQUEST ----->Peut recevoir des valeurs get et Post de deux manières


  • $GLOBALS -----> Toutes les variables sont placées dans

  • $_FILES ----->Télécharger des fichiers en utilisant

  • $_SERVER ----->Système variables d'environnement


  • $_SESSION ----->Le contrôle de session sera utilisé

  • $ _COOKIE ----->Session Il sera utilisé lors du contrôle de

3 La différence entre les méthodes POST, GET, PUT et DELETE en HTTP

HTTP définit différentes méthodes pour interagir avec le serveur, les plus basiques sont POST, GET, PUT et DELETE. Le nom complet de l'URL indispensable est un descripteur de ressource. On peut le comprendre ainsi : url décrit une ressource sur. le réseau, et publier, obtenir, mettre et déléguer sont les éléments suivants. Cette ressource peut être ajoutée, supprimée, modifiée ou vérifiée !

3.1 La différence entre les méthodes de soumission get et post sous la forme
    get ajoute la file d'attente de données de paramètres à l'URL pointée par l'attribut d'action du formulaire soumis. La valeur correspond de manière individuelle à chaque champ du formulaire, comme le montre la publication URL ; la publication utilise le mécanisme HTTPPOST pour empêcher chaque champ et son contenu du formulaire d'être transmis ensemble à l'adresse URL indiquée. à par l'attribut action dans l'en-tête HTML, et l'utilisateur ne peut pas le voir. Pour ce processus
  • Pour la méthode get, le côté serveur utilise Request.QueryString pour obtenir la valeur du. variable. Pour la méthode post, le côté serveur utilise Request.Form pour obtenir les données soumises
  • La quantité de données transmises par get est faible et la quantité de données transmises par courrier est faible. plus grand. Il est généralement sans restriction par défaut. Cependant, en théorie, le montant maximum est de 80 Ko dans IIS4 et de 1 000 Ko dans IIS5. Get est très sécurisé, la sécurité des postes est élevée
  • 3.2.
    La requête GET enverra une requête de données à la base de données pour obtenir des informations. Cette requête, tout comme l'opération de sélection de la base de données, est uniquement utilisée pour interroger des données. modifier ou ajouter des données, et n'affectera pas le contenu de la ressource, c'est-à-dire que la demande n'aura pas d'effets secondaires. Peu importe le nombre de fois que vous le faites, le résultat est le même.
  • Différente de GET, la requête PUT envoie des données au serveur pour modifier les informations. Cette requête s'apparente à l'opération de mise à jour de la base de données, utilisée pour modifier le contenu des données, mais le type de données ne sera pas augmenté, ce qui signifie que quel que soit le nombre d'opérations PUT effectuées, les résultats ne seront pas différents.
  • La requête POST est similaire à la requête PUT, les deux envoient des données au serveur, mais cette requête changera le type de données et d'autres ressources, tout comme l'opération d'insertion de la base de données, elle créera du nouveau contenu. Presque toutes les opérations de soumission actuelles sont demandées via POST.
  • La requête DELETE, comme son nom l'indique, est utilisée pour supprimer une certaine ressource. Cette requête est comme l'opération de suppression de la base de données.
  • 4. Introduction à PHP

Préprocesseur hypertexte ----Préprocesseur hypertexte

Page d'accueil personnelle Nom original

Objectif cible :

Permettre aux développeurs Web d'écrire rapidement des pages Web générées dynamiquement. Par rapport à d'autres pages, PHP intègre le programme dans le document HTML pour l'exécution, ce qui est beaucoup plus efficace que CGI qui génère entièrement l'édition HTML<.>HTML :

Langage de balisage hypertexte

Fondateur :

Rasmus Lerdorf, né en 1968, Université de Waterloo, Canada

Ledolf ​​​​a d'abord écrit le programme de maintenance en langage prel pour maintenir sa page Web personnelle, puis l'a réécrit en c, ce qui a finalement conduit à php/fi

Chronologie :

  • 1995.06.08 Sortie publique de PHP/FI

  • 1995 php2.0, prise en charge supplémentaire de MySQL

  • 1997 php3.0

  • 2000 php4.0

  • 2008 php5.0

  • Étant donné que php6.0 ne résout pas complètement l'encodage Unicode, il n'y a pratiquement aucune application sur la chaîne de production. Il s'agit essentiellement d'un produit conceptuel. De nombreuses fonctions ont été implémentées sur php5.3.3 et php5.3.4

IDE communs (environnement de développement intégré) :Environnement de développement intégré

  • Coda (mac)

  • PHPStrom

  • Adobe Dreamweaver

  • NetBeans

Éditeur de texte commun, avec surlignage de code :

  • NodePad

  • SublimeText

Avantages PHP

Fonctionnalités PHP :

  • php mélange de manière unique la syntaxe propre à C, Java, Prel et PHP

  • Il peut exécuter des pages Web dynamiques plus rapide que CGI ou Prel. Par rapport à d'autres langages de programmation, PHP intègre des programmes dans des documents HTML pour l'exécution. L'efficacité d'exécution est bien supérieure à celle de CGI qui génère entièrement l'édition HTML

  • <.>Prend en charge presque toutes les bases de données et systèmes d'exploitation populaires
  • PHP peut utiliser C et C pour l'expansion du programme
Avantages PHP :

    Code Open Source
  • Liberté
  • Rapidité
  • Forte multiplateforme
  • Haute efficacité
  • Traitement graphique
  • Objet -orienté
  • Orientation professionnelle
Application de la technologie PHP :

    Génération de pages statiques
  • Cache de base de données
  • Cache de processus
  • p css w3c standard
  • Grosse charge
  • Distribué
  • flex
  • Support MVC
  • Moteur de module Smarty
  • Niveau de certification PHP

    Junior IFE : Index Front Engineer Front -Ingénieur fin
  • IPE intermédiaire : Ingénieur PHP Index Ingénieur PHP
  • IAE Senior : Ingénieur Architecture Index Ingénieur Architectural
  • 6. La différence entre echo, print_r, print, var_dump

7. 🎜>
* echo、print是php语句,var_dump和print_r是函数
* echo 输出一个或多个字符串,中间以逗号隔开,没有返回值是语言结构而不是真正的函数,因此不能作为表达式的一部分使用
* print也是php的一个关键字,有返回值 只能打印出简单类型变量的值(如int,string),如果字符串显示成功则返回true,否则返回false* print_r 可以打印出复杂类型变量的值(如数组、对象)以列表的形式显示,并以array、object开头,但print_r输出布尔值和NULL的结果没有意义,因为都是打印"\n",因此var_dump()函数更适合调试
* var_dump() 判断一个变量的类型和长度,并输出变量的数值

Saison de recrutement 2017 : Super résumé des questions d'entretien PHP !

Saison de recrutement 2017 : Super résumé des questions d'entretien PHP !

Saison de recrutement 2017 : Super résumé des questions d'entretien PHP !

Saison de recrutement 2017 : Super résumé des questions d'entretien PHP !Codes d'état HTTP courants :

Saison de recrutement 2017 : Super résumé des questions d'entretien PHP !

200 - Demande réussie Saison de recrutement 2017 : Super résumé des questions d'entretien PHP !

301 - Les ressources (page Web, etc.) sont définitivement échappées vers d'autres URL

  • 404 - La ressource demandée (page Web, etc.) n'existe pas

  • 505 - Erreur interne du serveur

  • Classification du code d'état HTTP :

  • 1** - Information, demande reçue par le serveur, demande requise L'opérateur continue d'effectuer l'opération

2** - Succès, l'opération a été reçue et traitée avec succès

  • 3** - Redirection, une action supplémentaire est requise Action pour compléter la demande

  • 4** - Erreur client, la requête contient une erreur de syntaxe ou la requête ne peut pas être complétée

  • 5** Erreur serveur, Une erreur s'est produite pendant que le serveur traitait la demande

  • 8. Que sont les guillemets magiques en cours d'échappement, il est préférable de ne pas s'échapper lors de l'encodage mais de s'échapper si nécessaire pendant l'exécution ?

  • 9. Comment obtenir l'IP du client (nécessite un int) et le code de l'IP du serveur
  • Client :

Serveur :

10. Utilisez ces outils pour le contrôle de version

cvs, svn, vss, git

11. Méthodes pour optimiser la base de données $_SERVER["REMOTE_ADDR"];或者getenv('REMOTE_ADDR')
ip2long进行转换
Sélectionnez les attributs de champ les plus applicables, réduisez autant que possible la largeur des champs définis et essayez de définir les champs sur NOTNULL, tels que « province », « Sexe » est préférable d'utiliser ENUMgethostbyname('www.baidu.com')

Utilisez JOIN au lieu de la sous-requête

Utilisez UNION au lieu de la table temporaire créée manuellement
  • Traitement des transactions
  • Verrouiller la table, optimiser le traitement des transactions
  • Appliquer les clés étrangères, optimiser la table de verrouillage
  • 建立索引

  • 优化查询语句

12、是否使用过模板引擎?使用的模板引擎的名字是?

Smarty:Smarty算是一种很老的PHP模板引擎了,它曾是我使用这门语言模板的最初选择。虽然它的更新已经不算频繁了,并且缺少新一代模板引擎所具有的部分特性,但是它仍然值得一看。

13、对于大流量网站,采用什么方法来解决访问量的问题

  • 确认服务器硬件是否能够支持当前的流量

  • 数据库读写分离,优化数据表

  • 程序功能规则,禁止外部的盗链

  • 控制大文件的下载

  • 使用不同主机分流主要流量

14、语句include和require的区别是什么?为避免多次包含同一文件,可以用(?)语句代替他们

  • require是无条件包含,也就是如果一个流程里加入require,无论条件成立与否都会先执行require,当文件不存在或者无法打开的时候,会提示错误,并且会终止程序执行

  • include有返回值,而require没有(可能因为如此require的速度比include快),如果被包含的文件不存在的化,那么会提示一个错误,但是程序会继续执行下去

注意:包含文件不存在或者语法错误的时候require是致命的,而include不是

  • require_once表示了只包含一次,避免了重复包含

15、谈谈mvc的认识

由模型、视图、控制器完成的应用程序,由模型发出要实现的功能到控制器,控制器接收组织功能传递给视图

16、 说明php中传值与传引用的区别,并说明传值什么时候传引用?

变量默认总是传值赋值,那也就是说,当将一个表达式的值赋予一个变量时,整个表达式的值被赋值到目标变量,这意味着:当一个变量的赋予另外一个变量时,改变其中一个变量的值,将不会影响到另外一个变量

php也提供了另外一种方式给变量赋值:引用赋值。这意味着新的变量简单的引用(换言之,成为了其别名或者指向)了原始变量。改动的新的变量将影响到原始变量,反之亦然。使用引用赋值,简单地将一个&符号加到将要赋值的变量前(源变量)

对象默认是传引用
对于较大是的数据,传引用比较好,这样可以节省内存的开销


17、isset、empty、is_null的区别

isset 判断变量是否定义或者是否为空

  变量存在返回ture,否则返回false
  变量定义不赋值返回false  unset一个变量,返回false
  变量赋值为null,返回false

empty:判断变量的值是否为空,能转换为false的都是空,为空返回true,反之返回false。

    "",0,"0",NULL,FALSE都认为为空,返回true
    没有任何属性的对象都认为是空

is_null:检测传入的值(值、变量、表达式)是否为null

    定义了,但是赋值为Null
    定义了,但是没有赋值    unset一个变量

18、前端调试的工具

  • Firefox的firebug

  • Chrome的开发工具

  • Emmet

  • JSON格式校验工具

19.    简单描述mysql中,索引,主键,唯一索引,联合索引的区别,对数据库的性能有什么影响(从读写两方面)(新浪网技术部)

索引是一种特殊的文件(InnoDB数据表上的索引是表空间的一个组成部分),它们包含着对数据表里所有记录的引用指针。
普通索引(由关键字KEY或INDEX定义的索引)的唯一任务是加快对数据的访问速度。
普通索引允许被索引的数据列包含重复的值。如果能确定某个数据列将只包含彼此各不相同的值,在为这个数据列创建索引的时候就应该用关键字UNIQUE把它定义为一个唯一索引。也就是说,唯一索引可以保证数据记录的唯一性。
主键,是一种特殊的唯一索引,在一张表中只能定义一个主键索引,主键用于唯一标识一条记录,使用关键字 PRIMARY KEY 来创建。
索引可以覆盖多个数据列,如像INDEX(columnA, columnB)索引,这就是联合索引。
索引可以极大的提高数据的查询速度,但是会降低插入、删除、更新表的速度,因为在执行这些写操作时,还要操作索引文件。

20.数据库中的事务是什么?

事务(transaction)是作为一个单元的一组有序的数据库操作。如果组中的所有操作都成功,则认为事务成功,即使只有一个操作失败,事务也不成功。如果所有操作完成,事务则提交,其修改将作用于所有其他数据库进程。如果一个操作失败,则事务将回滚,该事务所有操作的影响都将取消。ACID 四大特性,原子性、隔离性、一致性、持久性。

21. Comprenez-vous les attaques XSS ? Comment l’empêcher ?

XSS est une attaque de script intersite. Premièrement, la vulnérabilité de script intersite est utilisée pour exécuter un script construit par l'attaquant en mode privilégié, puis le contrôle Activex non sécurisé est utilisé pour exécuter des comportements malveillants. .
Utilisez la fonction htmlspecialchars() pour filtrer le contenu soumis et matérialiser les symboles spéciaux dans la chaîne.

22. Quelles sont les causes des vulnérabilités d'injection SQL ? Comment l’empêcher ?

Cause de l'injection SQL : pendant le processus de développement du programme, vous n'avez pas prêté attention à l'écriture standard des instructions SQL et au filtrage des caractères spéciaux, ce qui a permis au client de soumettre certaines instructions SQL via des variables globales POST et GET pour une exécution normale.

Moyens d'empêcher l'injection SQL :
  1. Activer les paramètres magic_quotes_gpc et magic_quotes_runtime dans le fichier de configuration

  2. Utiliser lors de l'exécution d'instructions SQL addlashes convertit les instructions SQL

  3. Essayez de ne pas omettre les guillemets doubles et simples lors de l'écriture d'instructions SQL.

  4. Filtrez certains mots-clés dans l'instruction SQL : update, insert, delete, select, *.

  5. Améliorez vos compétences de dénomination des tables et des champs de base de données, et nommez certains champs importants en fonction des caractéristiques du programme, afin qu'ils soient difficiles à deviner.

  6. Définissez register_globals sur off dans le fichier de configuration Php et désactivez l'enregistrement des variables globales

  7. Contrôlez les messages d'erreur et n'affichez pas de messages d'erreur sur le navigateur. Écrivez les informations d’erreur dans le fichier journal.

23. Quelles sont les principales méthodes d'attaque sur les sites Web PHP ?

  1. Injection de commandes

  2. Injection d'évaluation

  3. Insertion de script client

  4. Cross Site Scripting (XSS)

  5. Injection SQL

  6. Requête Cross Site
    Forgeries, CSRF)

  7. Détournement de session

  8. Fixation de session

  9. Partage de réponse HTTP

  10. Vulnérabilité de téléchargement de fichiers (attaque de téléchargement de fichiers)

  11. Traversée de répertoire (traversée de répertoire)

  12. Attaque d'inclusion à distance (inclusion à distance)

  13. Variable dynamique
    Évaluation)

  14. Attaque d'URL (attaque d'URL)

  15. Attaque d'usurpation d'identité de soumission de formulaire (Formulaire usurpé
    Soumissions)

  16. Attaque d'usurpation de requête HTTP (Demandes HTTP usurpées)

24. Ce qui est dans le cadre Entrée unique et entrées multiples, quels sont les avantages et les inconvénients d’une entrée unique ?

  1. Duokou répond aux demandes des utilisateurs en accédant à différents fichiers. Un programme Web à entrée unique dirige toutes les requêtes vers un fichier de script.

  2. Une entrée unique facilite le contrôle des autorisations et facilite les contrôles de sécurité sur les requêtes http.
    Inconvénients : L'URL n'est pas si belle, et surtout peu conviviale pour les moteurs de recherche.

25. Pour les bases de données relationnelles, l'indexation est un concept très important. Veuillez répondre à quelques questions sur l'indexation :

a).
  1. Accédez rapidement à des informations spécifiques dans la table de données et améliorez la vitesse de récupération

  2. Créez un index unique pour garantir l'unicité de chaque ligne de données dans le sexe de la table de base de données.

  3. Accélérez les tables et les jointures entre les tables

  4. Lorsque vous utilisez des clauses de regroupement et de tri pour la récupération de données, vous pouvez réduire considérablement le temps de regroupement et de tri

b) Quel est l'impact négatif de l'indexation sur le système de base de données ?

Impact négatif :
La création et la maintenance d'index prennent du temps, et ce temps augmente à mesure que la quantité de données augmente. Les index doivent occuper de l'espace physique, et non seulement les tables doivent occuper des données ; Espace, chaque index doit également occuper de l'espace physique ; lorsque la table est ajoutée, supprimée, modifiée, l'index doit être maintenu dynamiquement, ce qui réduit la vitesse de maintenance des données.

c). Quels sont les principes d’indexation des tableaux de données ?
  1. Créez un index sur les champs les plus fréquemment utilisés pour affiner la portée de la requête.

  2. Créer des index sur les champs fréquemment utilisés qui doivent être triés

d). Dans quelles circonstances est-il inapproprié de créer un index ?
  1. Il n'est pas approprié de créer un index pour les colonnes rarement impliquées dans des requêtes ou des colonnes avec de nombreuses valeurs en double.

  2. Pour certains types de données spéciaux, il n'est pas approprié de créer des index, tels que des champs de texte (texte), etc.

26. Décrivez brièvement la différence entre MyISAM et InnoDB dans la base de données MySQL

La caractéristique la plus importante qui la distingue des autres bases de données est son moteur de stockage de tables de plug-in. N'oubliez pas : le moteur de stockage est basé sur des tables et non sur des bases de données.

La différence entre InnoDB et MyISAM :

Moteur de stockage InnoDB : Principalement pour les applications OLTP (Online Transaction Processing, traitement des transactions en ligne), c'est le premier support complet ACID moteur de stockage de transactions (le premier moteur de stockage de BDB à prendre en charge les transactions, a arrêté son développement).

Caractéristiques :

  • Conception de verrouillage de rangée, prise en charge des clés étrangères

  • Prend en charge les lectures non verrouillables cohérentes similaires au style Oracle (c'est-à-dire : les opérations de lecture ne généreront pas de verrous par défaut

  • InnoDB le mettra dans un fichier ); espace table logique et géré par InnoDB lui-même. À partir de la version MySQL 4.1, chaque table du moteur de stockage InnoDB peut être stockée dans un fichier ibd indépendant

  • InnoDB utilise MVCC (Multi-version Concurrency Control : la lecture bloquera l'écriture et l'écriture ; ne bloquera pas la lecture) pour obtenir une simultanéité élevée, et implémente les 4 niveaux d'isolement du standard SQL (la valeur par défaut est le niveau REPEATABLE)

  • InnoDB fournit également des performances élevées et une haute disponibilité ; des fonctions telles que l'insertion de tampon, la double écriture, l'index de hachage adaptatif et la lecture anticipée

  • InnoDB utilise une méthode clusterisée pour stocker les données dans la table. clé primaire (si la clé primaire n'est pas explicitement spécifiée lors de la création de la table, InnoDB générera un 6 pour chaque ligne. octet ROWID, et l'utilisera comme clé primaire

  • La clé primaire) ; La table InnoDB aura trois champs cachés : En plus du DB_ROW_ID de 6 octets mentionné ci-dessus, il existe également un DB_TX_ID (ID de transaction) de 6 octets et un DB_ROLL_PTR de 7 octets (pointant vers l'adresse du segment d'annulation correspondant). Cela peut être vu via Innodb Monitor ;

Moteur de stockage MyISAM : est le moteur de stockage officiellement fourni par MySQL, principalement pour OLAP (Online Analytical Processing, analyse en ligne et traitement) des demandes. Caractéristiques :

  • Ne prend pas en charge les transactions, mais prend en charge les tables et les index de texte intégral. La vitesse de fonctionnement est rapide ;

  • La table du moteur de stockage MyISAM se compose de MYD et MYI, MYD est utilisé pour stocker les fichiers de données et MYI est utilisé pour stocker les fichiers d'index. La base de données MySQL met uniquement en cache ses fichiers d'index, et la mise en cache des fichiers de données est laissée au système d'exploitation lui-même
    À partir de la version MySQL 5.0, MyISAM prend en charge 256 T de données de table unique par défaut ; >

    27. Expliquez la différence entre les jointures externes, les jointures internes et les auto-jointures MySQL

Tout d'abord, qu'est-ce qu'une jointure croisée :

La jointure croisée est également appelée cartésienne produit. Cela signifie qu'il n'utilise directement aucune condition. Faites correspondre tous les enregistrements d'une table avec tous les enregistrements d'une autre table.

Jointure interne

est une connexion croisée avec uniquement des conditions. Les enregistrements qui remplissent les conditions sont filtrés en fonction d'une certaine condition. Les enregistrements qui ne remplissent pas les conditions n'apparaîtront pas dans le résultat. set, c'est-à-dire que les jointures internes connectent uniquement les lignes correspondantes.

Jointure externe L'ensemble de résultats contient non seulement des lignes qui répondent aux conditions de jointure, mais inclut également toutes les lignes de données de la table de gauche, de la table de droite ou de celles-ci. trois types Les situations sont appelées tour à tour jointure externe gauche, jointure externe droite et jointure externe complète. Jointure externe gauche, également appelée jointure gauche, la table de gauche est la table principale, tous les enregistrements de la table de gauche apparaîtront dans l'ensemble de résultats, et les enregistrements qui ne correspondent pas dans la table de droite doivent toujours être affiché, à droite Les valeurs des champs correspondants sont remplies de NULL. Jointure externe droite, également appelée jointure droite, la table de droite est la table principale et tous les enregistrements de la table de droite apparaîtront dans le jeu de résultats. Les jointures gauche et droite sont interchangeables et MySQL ne prend actuellement pas en charge les jointures externes complètes.

28. Écrivez les noms de plus de trois moteurs de stockage de bases de données MySQL (astuce : ne respecte pas la casse)

MyISAM, InnoDB, BDB (BerkeleyDB), Merge, Memory (Heap), Exemple, Federated,

Archive, CSV, Blackhole, MaxDB et plus d'une douzaine de moteurs

29. Qu'est-ce que l'orienté objet ? Quelles sont les principales caractéristiques ? Quels sont les grands principes ?

L'orientation objet est un modèle de conception pour les programmes, qui contribue à améliorer la réutilisabilité des programmes et rend la structure du programme plus claire. Les principales caractéristiques sont : l'encapsulation, l'héritage et le polymorphisme.

Cinq principes de base : Principe de responsabilité unique ; Principe d'ouverture et de fermeture ; Principe de séparation d'interface ;

30. Qu'est-ce que le routage statique et quelles sont ses caractéristiques ? Qu'est-ce que le routage dynamique et quelles sont ses caractéristiques ?

Réponse de référence :

Le routage statique est conçu et construit par les administrateurs système ? route spécifiée dans la table de routage. Il convient aux situations où le nombre de passerelles est limité et où la topologie du réseau ne change pas fréquemment. Son inconvénient est qu'il ne peut pas s'adapter dynamiquement aux changements des conditions du réseau. Lorsque les conditions du réseau changent, la table de routage doit être modifiée par l'administrateur réseau.

Le routage dynamique est construit dynamiquement par les protocoles de routage. Les protocoles de routage mettent à jour le contenu des tables de routage en temps réel en échangeant les informations de routage qu'ils possèdent. Le routage dynamique peut apprendre automatiquement la topologie du réseau et mettre à jour la table de routage. L’inconvénient est que le routage des informations de mise à jour diffusées occupera une grande quantité de bande passante réseau.


31. Avez-vous déjà utilisé le cache Memcache ? Si oui, pouvez-vous décrire brièvement son fonctionnement ?

Memcahce stocke toutes les données en mémoire à l'aide d'une table de hachage. Chaque donnée est composée d'une clé et d'une valeur. Chaque clé est unique. Lorsque vous souhaitez accéder à une certaine valeur, suivez d'abord les étapes pour la trouver. valeur et renvoie le résultat.

Memcahce utilise l'algorithme LRU pour effacer progressivement les données expirées.

32. Listez les frameworks Ajax populaires ? Expliquez quel est le principe de mise en œuvre d'Ajax et quel rôle joue json dans Ajax ?

Les frameworks Ajax populaires incluent jQuery, Prototype, Dojo et MooTools.

Le principe de fonctionnement d'Ajax est que l'emplacement spécifié d'une page peut charger tout le contenu de sortie d'une autre page de cette manière, une page statique peut également obtenir les informations de données renvoyées par la base de données. Par conséquent, la technologie Ajax permet à une page Web statique de communiquer avec le serveur sans actualiser la page entière, réduisant ainsi le temps d'attente des utilisateurs, réduisant ainsi le trafic réseau et améliorant la convivialité de l'expérience client.
Lors de l'utilisation d'Ajax, cela implique la transmission de données, c'est-à-dire le renvoi des données du serveur au client. Le serveur et le client utilisent des langages de script différents pour traiter les données, ce qui nécessite un format de données commun, XML et JSON. sont les deux plus couramment utilisés, et json est plus simple que XML.

33. Présentation du mécanisme d'annulation de transaction dans Myql

Une transaction est une séquence d'opérations de base de données définie par l'utilisateur. Ces opérations sont soit effectuées en totalité, soit aucune. travail. L'annulation de transaction fait référence à l'annulation des opérations de mise à jour de la base de données qui ont été effectuées par la transaction.

Lorsque vous souhaitez modifier deux tables différentes dans la base de données en même temps, s'il ne s'agit pas d'une transaction, lorsque la première table est modifiée, une exception peut survenir lors du processus de modification de la deuxième table et elle ne peut pas être modifié. À ce stade, seule la deuxième table est encore dans son état non modifié, tandis que la première table a été modifiée. Et lorsque vous les définissez comme transaction, lorsque la première table est modifiée et que la deuxième table est modifiée anormalement et ne peut pas être modifiée, la première table et la deuxième table reviendront à l'état non modifié. C'est ce qu'on appelle l'annulation de la transaction.


Les 33 questions ci-dessus répertorient certaines des questions de l'entretien de faciles à difficiles. Pour les étudiants qui souhaitent changer d'emploi, passer par ces questions peut améliorer leurs performances lors de l'entretien. il y a beaucoup de taux de réussite, alors ici, je souhaite à tous ceux qui recherchent un emploi de trouver un emploi qui vous satisfasse

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn