Skip to main content

La diversification de la langue est une partie importante de la culture de programmation PayPal. Bien que C ++ et Java sont longs, de nombreuses équipes ont choisi JVA et Scala. Dans le même temps, Braintree acquis a également introduit une communauté de rubis à long terme. Python a une très longue histoire sur eBay et PayPal en tant que langue spéciale. De plus, sa popularité augmente encore.


Les développeurs eBay soutiennent Python pendant de nombreuses années d'applications linguistiques. Avant même de gérer Ebay a officiellement soutenu Python, le technicien a commencé à utiliser Python. J'ai ajouté PayPal il y a quelques années et a choisi Python pour écrire des applications internes, mais j'ai trouvé du code Python à Paypal au cours des 15 dernières années.


Actuellement, Python prend en charge plus de 50 entrées, notamment:
Type de fonction et type de produit, tel que eBay maintenant et Redllaser
]
] Activités et infrastructures **, de Open OpenStack à la spécialisation

Type de service intercalaire et d'application **, telle que PayPal pour fixer les prix et la détection CFonctions disponibles de l'utilisateur (service / application)
Type * Type *, pour certains cas d'utilisation

Série de tâches de service *, telles que la saisie de données, l'ajustement des prix et d'autres projets

L'outil de développeur n'est pas possible dans



, je détaillerai l'écosystème Python créant eBay et PayPal dans l'article suivant. Depuis 2011, pas plus de 25 ingénieurs ont utilisé la technologie et les initiatives utilisées en 2014 plus de 260 ingénieurs. Pour cet article, je me concentrerai sur l'ambulance environnementale sur eBay et l'environnement de PayPal Business Business.

# 1: Python est une nouvelle langue



Ensemble avec toutes les entreprises de démarrage qui l'utilisent et que les enfants apprennent également la vérité, cette sophiste pourquoi est toujours compréhensible. En fait, Python avait plus de 23 ans. Il a été publié à l'origine en 1991, plus tôt que l'accord HTTP 1.0 pendant 5 ans et plus tôt que Java 4 ans. PrésentementAux exemples d'utilisation de Python en 1996: Google Réseau de reptiles avec succès.

Si vous êtes curieux d'avoir une longue histoire de Python, l'auteur de Python Guido Van Rossum a préparé toute l'histoire pour vous.


Messages n ° 2: Python n'est pas compilé


sans une chaîne de compilateur distincte comme C ++, Python est en fait compilé dans le code Zona. Il ressemble beaucoup à Java ou à de nombreuses autres langues de traduction. Des processus supplémentaires, le cas échéant, en fonction de l'environnement d'exécution, que ce soit CPPHON, PYPY, JYTHON / JVM, IRALPYTHON / CLR ou d'autres machines virtuelles de processeur. Reportez-vous à la FALLATION # 6 pour en savoir plus.


Un principe commun dans PayPal et d'autres lieux sont la sécurité (applications) qui ne peuvent pas être basées sur l'état de la compilation du code. Il est important d'améliorer la sécurité de l'environnement d'exécution, car toutes les langues ont des décodeurs ou peuvent être bloquées et exportés des états protégés. Se référer à la prochaine grille pour apprendre tSur les problèmes de sécurité de Python.



# 3: Python n'est pas sûr


L'affinité phare de Python peut le faire paraître très terrible, mais voici Quan avec un grand moyen. Un principe fondamental est de rendre la cible autant que possible. Le grand système viole des principes de sécurité, car ils ont tendance à concentrer leur comportement et à rendre les développeurs à comprendre. Python est reconnu avec la marge de ces problèmes dégoûtants. Ce qui est même, CPPHON est résolu en en faisant une machine virtuelle simple, stable et facile à considérer. En fait, les résultats analytiques récents du logiciel de couverture montrent que CPPHON les obtient. Notations de qualité les plus élevées.

Python dispose également d'une série de bibliothèques de sécurité standard industrielles, la source ouverte industrielle peut être étendue. Dans PayPal, nous verrons la sécurité et le crédit comme poids, nous voyons Hashlib, PycryPTO et OpenSSL combinaison de pyopenssl et de notre personnalisation, y compris des exigences de sécurité et des performances de la diversification de PayPal.
Ces raisons ont rendu Python le choix le plus rapide de certains services. Ici, vous avez python en utilisant certains agents de sécurité dans l'environnement de sécurité de PayPal:

Pour promouvoir la mise en œuvre du cryptage de verrouillage et de consolidation


Intégrer la technologie HSM supérieure


à l'absence de Stacks technologiques compatibles

Créez des clés et des certificats pour leur package d'authentification mutuelle interne I

Scanner d'activité de développement


Il y a aussi Bénéficielle d'innombrables présence de Python Build, Systèmes d'exploitation, terme en tant que pare-feu et gestion de la connexion. À l'avenir, nous devons revenir pour intégrer en profondeur de la sécurité de PayPal Python.


误 # 4: Python est une langue de script

Python est en fait utilisé pour écrire des épisodesLes commandes et en raison de la syntaxe simple, multi-plate-forme et fonctionnelle, c'est l'un des leaders de cette zone.

En fait, Python peut être la technologie la plus flexible dans les langages de programmation utiles courantes. Voici quelques exemples:
    Infrastructure de télécommunication (Twilio)

    Paypal, Paiement de solde




    Ingénierie et ingénierie (Numby, Numba et plus)


    Eve du Nouvel An, Lundi Life, Battlefields et beaucoup d'autres)
    Infrastructure de courrier électronique (Mailman, Mailgun)

    YouTube, Instagram, Dropbox



    Gestion du système et gestion du système (Rackspace, OpenStack

    Traitement des langues naturelles (NLTK)



    . Version (Scikit-apprendre, orange, SimpleCV)

    eBay / PayPal



    Larges données (eu lieu, Hadoop)

    SU YAN (Server du calendrier)















]


FONDATION INTERNET (DNS) (BIND 10)

    Ne vous référez pas au site Web et au service Web, cela ne doit pas être un quelque. En fait, les ingénieurs PayPal semblent s'intéresser à l'engagement de Python envers les fonctionnalités Web, telles que YouTube et Yelp. Si vous êtes intéressé par une liste plus grande des cas réussi de Python, consultez la liste officielle.

    # 5: Python est un type de type de type Python

    a une opération forte et flexible. L'Encyclopédie Eliki est expliquée.


    Et il y a un fait indiscutable et intéressant que Python est meilleur que Java plus fort. Java distingue le système de type pour les objets de type et d'origine, aidant NULL exister dans une zone grise. D'autre part, Python moderne dispose d'un système puissant unifié, qui n'a pas de type (non), il est clairement attribué. De plus, JVM elle-même bouge également car elle peut être récupérée avec un smalltalk vmAcquis par le soleil.
    Le système de type Python est génial mais de fournir l'utilisation des niveaux de travail, il existe encore des problèmes plus importants pour faire attention.

# 6: vitesse python lente

La première est une différence importante: Python est une langue de programmation au lieu de l'environnement d'exécution. Python a un déploiement:
    CPPHON est un déploiement de référence et est également largement distribué et utilisé.

    Jython est un déploiement mature pour Python pour JVM.

    IronPython Microsoft est Microsoft fonctionne dans sa propre langue universelle - est également le nom .NET, Python.

PYPY est un déploiement de python de plus en plus mature, avec la synthèse JIT, augmentant les caractéristiques de collecte des ordures.

Chaque fois qu'il existe ses propres caractéristiques de performance, et ils ne sont pas lents. Plus important encore, où ils ne peuvent pas créer un indicateur de performance attribué aux langages de programmation QI. Il doit toujours menerWen est utilisé dans une application à exécuter, il est préférable pour un scénario d'utilisation spécifique.

Après un problème, les petits articles sont fournis par Python, reflétant son avantage de performance important:


Utilisez NUMPLY COMME INTELS MKL SIMD Interface


    La compilation PYPY JIT peut atteindre des performances plus rapides C



    DISQUS peut contenir plus de 100 millions de 500 millions d'utilisateurs sur les mêmes 100 boîtes [

il est vrai que cette N'est-ce pas la dernière liste, juste mon favori personnel. Cela tirera facilement des activités de python et d'activités indépendantes de haute performance. Nous ne devrions pas nous concentrer sur la résolution d'un cas unique, mais devrions se concentrer sur l'impact général des développeurs dans la productivité de la performance finale du produit, en particulier dans l'environnement de l'entreprise..
C ++ VS Python, comparant la même sortie.

Fournir suffisamment de temps et de processeur unN Suivre d'autres moyens de prouver:

Reconnaissant un logiciel pouvant compléter la bonne tâche, y compris le développement de tests distincts
]

Vérifier les performances, le goulot d'étranglement clair


Optimisé, selon l'inspection et la loi d'AMDAHL, et utilisez Python et C origine C



















. Cela semble simple, même l'ancien manager, cela reste un temps de consommation de temps. L'ensemble de ces processus de développement est pris en compte lors du début de la conception Python. Dans notre expérience, généralement des projets C ++ et Java ont achevé des processus répétés, suffisamment pour compléter trois processus de répétition dans le projet Python. Aujourd'hui, il n'y a pas de pénurie de projets Python dans PayPal et eBay. Moins de codes de battement des mêmes projets C ++ et Java, les pertes de développement rapides permettent de couper et d'optimiser les bonnes cultures . Legend # 7: Python ne peut pas effectuer de grande envergure Il existe de nombreuses définitions,Mais peu importe ce que YouTube est un site Web de grande envergure. UV mensuelle dépasse la facture, la vidéo téléchargée par vidéo est supérieure à 100 heures par minute, représentant 20% de la bande passante Internet, tout en utilisant Python comme technologie de base. Dropbox, Disqus, Eventbrite, Reddit, Twilio, Instagram, Yelp, Eve Online, Life lundi, et, Oui et Ebay et PayPal ont des exemples à grande échelle de Python, ces exemples ne peuvent pas être possibles: c'est un régime. Le niveau de succès est très simple et cohérent. CPPHON, la principale machine virtuelle de Python, maximisant ces caractéristiques, développer une exécution est mesurée avec précision. Il est difficile de trouver que les programmeurs Python sont intéressés par la collecte des ordures ou du temps de lancement. Avec une plate-forme forte et un support Web, l'intelligence naturelle de Python peut être étendue et BitTorrent est une manifestation complète. De plus, l'échelle principale comprend des mesures et des répétitions. Python est défini pour l'analyse et l'optimisation. Voir la légende # 6 En savoir plus sur la façon dont Python est ouvertlarge verticalement. Légende # 8: Python manque de bon soutien simultané En plus de crier occasionnellement et d'échelle, certaines personnes veulent mentionner "Python manque simultanément" ou ", comment?" Si des dizaines d'antiquités ne suffisent pas pour supporter les niveaux de python et se développer verticalement à l'échelle, la mise en œuvre de CPPHON ne vous aidera pas, donc je serai bref. Python a la primitive originale, y compris les générateurs, les greennettes, reportés et futurs. Python a une grande image simultanée, y compris des événements, Grever et Twist. Python a mis une excellente charge de travail dans des opérations personnalisées, y compris Stackless et Pypy. Toutes gênantes ces choses et plus de spectacles il y a une lacune dans la programmation simultanée Python. Dans le même temps, tout cela est officiellement soutenu ou utilisé dans l'environnement de production d'entreprise. Par exemple, veuillez vous reporter à l'inspection légendaire. # 7. Le verrouillage d'interpréteur mondial ou Gil est l'optimisation des performances de Python dans la plupart des scénarios d'application et sur la base du développement de la plupart des codes de déploiement CPPHON. Gil fabrique de manière python à l'aide du débit de système d'exploitation ou du flux de lumière (généralement des vertiges) sans affecter l'utilisation de plusieurs processus. Pour plus d'informations, veuillez consulter Q & AMP; Une liste de ce sujet et introduite dans des documents Python. Dans PayPal, un service commun nécessite plusieurs machines, de nombreux processus, plusieurs flux et de très grandes couleurs que des nombres, équivalents aux environnements parallèles peuvent être très étendus puissants (voir ci-dessous). Dans la plupart des environnements d'entreprise, l'équipe a tendance à être plus excitée, prudente et faire attention à la reprise des catastrophes. Cependant, dans certains cas, chaque machine est toujours traitée par des millions de demandes tous les jours et facile à manipuler. Il est vrai que ce n'est pas la dernière liste, juste des favoris personnelsmien. Cela tirera facilement des performances élevées et des opérations indépendantes de ces grandes surfaces. Nous ne devrions pas nous concentrer sur la résolution d'un cas unique, mais devrions se concentrer sur l'impact général des développeurs dans la mise en œuvre de la performance finale du produit, en particulier dans l'environnement de l'entreprise.. Une coopération à l'architecture mis en cause basée sur l'employé unique. La boîte extérieure est un processus, le niveau suivant est le canal dans lequel ces flux sont des flux de lumière. Le système d'exploitation gère la priorité entre les chaînes et les E / S est une synergie asynchrone. N ° 9: Le programmeur Python est très rare En fait, l'utilisation du développeur Web de Python n'utilise pas de développeurs Web PHP ou Java. Cela peut être principalement dû à l'interaction entre les besoins commerciaux et éducatifs, mais la tendance éducative (la langue de programmation utilisée dans l'enseignement) peut être modifiée. C'est, les joueursL'utilisation de Python n'est pas rare. Il y a actuellement des millions de développeurs utilisant Python dans le monde. Il existe des dizaines de conférences technologiques de Python et de milliers de questions sur le contenu de Python sur Stackoverflow, embauchent un grand nombre de grandes entreprises utilisant des développeurs Python tels que YouTube, Bank of American et LucasArts / Dreamworks, etc. C'est évident. Cela a confirmé ceci. Dans Ebay Andpaypal, nous avons maintenu un développeur formel à l'aide de Python, comment cela le faites-vous? Donc, lorsqu'un projet a été créé, pourquoi serait-il poussé? Pour les enfants, les étudiants et les professeurs, Python est facile à apprendre comme premier langage de programmation. Dans eBay, juste une semaine, un programmeur Python peut afficher de vrais résultats et commencer à émettre des rayons réguliers de 2-3 mois, via la bibliothèque de trésors Internet (guide interactif, livres, documents et open source)) tout est possible. Une autre considération importante est le projet SL'utilisation de Python sera plus simple, cela ne nécessitera pas de nombreux développeurs comme d'autres projets. Dans Sophistic 6 et Sophistication 9, dans le projet Python, l'équipe effective comme Instagram est une métaphore commune, ce qui est vraiment notre expérience d'eBay et de PayPal. Légende n ° 10: Python ne s'adapte pas au grand projet Legend # 7 Discutez d'un projet à grande échelle Python, mais le développement du projet Qu'est-ce que le projet Python massif ? Comme mentionné dans le mythe n ° 9, la plupart des python ne sont pas optimistes. Cependant, Instagram atteignit 10 millions de hits, mais seulement plus d'une douzaine de personnes dans toute la société. Dropbox n'a que 70 ingénieurs en 2011 et d'autres équipes sont moins. Alors, Python est-il approprié pour une équipe de grande taille? La Banque américaine avait en fait plus de 5 000 développeurs de Python, un projet distinct de plus de 10 millions de lignes de python. JP Morgan a également connu des changements similaires. YouTube possède également des milliers de développeurs et de biensmillions de lignes de code. Les produits et groupes à grande échelle utilisent Python tous les jours car il possède de bonnes caractéristiques d'emballage et de module, adaptées à une échelle spécifique de recommandations de développement à grande échelle. Des outils forts, pratiquant et évaluer le code d'invite réel de la gestion des échelles de projet. Heureusement, Python développe la même plate-forme mentionnée ci-dessus. Nous vérifions l'analyse statique du code Pychnon avec des pyflakes et d'autres outils uniquement dans le guide de la plate-forme de Pep8 - Python Language. Enfin, il convient de noter que, en plus de la planification du terme d'accélération n ° 6 et n ° 7, l'utilisation de projets Python nécessite souvent moins de développeurs. Dans nos cas courants réussi, les articles utilisant Java ou C ++ ont généralement 3-5 développeurs dépensant 2 à 6 mois, la majeure partie du projet se termine de 2 à 6 semaines (ou des heures, pour ces raisons). C'est un peu comme un miracle, mais c'est le fait que le développement moderne, mais c'est souvent une industrieConcurrence. Un état propre Ces scalers ne peuvent être qu'un passe-temps. L'argument de ces erreurs est toujours actif et inspiré, y compris interne et externe, car implicitement dans chaque sensibilisation sophistiquée de l'avantage de Python. N'oubliez pas que les performances semblent être ennuyées et gênantes constituent une croissance constante et développent stable dans la promotion de l'éducation et de travailler en permanence. Ici, j'espère quitter un feu plein de flammes et faire en sorte que cela discute vraiment avec le déploiement de Python.

Sujets

Catégories