


Conjecture sur le principe de mise en œuvre des enveloppes rouges WeChat
Le contenu suivant provient de l'arrière-plan des enregistrements de discussion d'un groupe d'architecture à haute disponibilité chez QCon : un ami a consulté sur l'architecture des enveloppes rouges WeChat, et le contenu de la discussion suivante a été tiré des explications et des discussions de responsables ou Des camarades de classe non officiels ont été nombreux pendant cette période. Un camarade de classe a donné une enveloppe rouge pour tester l'algorithme sur le réseau actuel.
Le processus de récupération des enveloppes rouges
Lorsque quelqu'un envoie une enveloppe rouge à N personnes du groupe, avec un montant total de M yuans, que se passe-t-il en arrière-plan est la suivante :
1. Opération en arrière-plan pour l'envoi d'enveloppes rouges :
Ajoutez un enregistrement d'enveloppe rouge dans la base de données, stockez-le dans CKV et définissez l'heure d'expiration ; >Dans le cache (probablement la base de données kv interne de Tencent, basée sur la mémoire, elle a été implémentée et dispose d'un module de traitement réseau à l'état du noyau pour fournir des services sous la forme d'un module de noyau)). enveloppes rouges N
2. Opérations en coulisses pour récupérer les enveloppes rouges :
Saisir les enveloppes rouges Elle est divisée en saisie et démolition. L'opération de saisie est terminée au niveau du cache. est décrémenté par opération de soustraction atomique jusqu'à ce qu'il atteigne 0. Cela signifie qu'elles sont toutes supprimées. En fin de compte, le nombre réel d'opérations de démontage en arrière-plan n'est pas important. Grâce à la séparation des opérations, les requêtes invalides sont directement bloquées en dehors de la couche cache. L’opération de soustraction atomique n’est pas ici une opération de soustraction atomique au vrai sens du terme, mais Le CAS fourni par la couche Cache continue d'essayer en comparant les numéros de version. Il existe un certain degré de conflit. L'utilisateur en conflit sera libéré et autorisé à passer à l'étape suivante du démontage. Cela explique également pourquoi certains utilisateurs ont saisi l'opération de démontage. La situation lorsque le développement est terminé.
L'ouverture des enveloppes rouges est complétée dans la base de données. Le nombre et le montant reçus sont accumulés grâce à l'opération de transaction de la base de données, et une réclamation est insérée. L'eau courante et l'enregistrement sont des opérations asynchrones, ce qui explique également pourquoi les enveloppes rouges ne sont pas visibles dans la balance après leur réception lors de la Fête du Printemps. Le montant sera calculé en temps réel lors du fractionnement. Le montant est un nombre aléatoire compris entre 1 point et 2 fois le montant total restant. Une enveloppe rouge d'une valeur de M yuans, la plus grande enveloppe rouge est M * 2 /N (et ne dépassera pas M), lorsque l'enveloppe rouge est ouverte, le montant et le numéro restants seront mis à jour. Tenpay prépare 200 000 transactions par seconde, mais le montant réel n'est que de 80 000 par seconde.
FAQPuisqu'il y a des atomes réduits lors de la saisie, ne devrait-il pas y avoir une situation où ils ne sont pas démantelés après la saisie ?
La soustraction atomique ici n'est pas une opération atomique au vrai sens du terme. Il s'agit du CAS fourni par la couche Cache, qui est constamment essayé en comparant les numéros de version.
Que dois-je faire si le cache et la base de données sont en panne ?
Le nombre d'enveloppes rouges a disparu, mais le solde est toujours là ?
Pourquoi séparer accaparement et démolition ?
L'idée générale est de mettre en place des filtres multicouches, de les filtrer couche par couche, et de réduire le débit et la pression couche par couche. Cette conception était à l'origine due au fait que l'opération de saisie est la couche métier et que l'opération de fractionnement est l'opération comptable. Une opération est trop lourde et le taux d'interruption est élevé.
Au niveau de l'interface, la première interface est une pure opération de cache et possède de fortes capacités de compression. Un simple cache de requête bloque la plupart des utilisateurs et effectue le premier filtrage, de sorte que la plupart des gens verront l'invite indiquant que le contenu a été épuisé.
Après avoir récupéré l'enveloppe rouge, envoyez-la ou retirez de l'argent. Y a-t-il une stratégie ici ?
Stratégie de dépôt prioritaire de gros montants
Existe-t-il des données prouvant si la probabilité de chaque enveloppe rouge est égale ?
Avec l'algorithme des tapotements de tête, y aura-t-il deux meilleurs ?
L'argent de la personne qui donne l'enveloppe rouge sera-t-il gelé ?
Pourquoi utiliser le calcul du montant en temps réel ?
Test 2 : Expérience de l'utilisateur de Zhihu "Ma Jingchen" :
Voici un échantillon de données d'enquête sur 100 échantillons et proposez votre propre supposition.
1. L'argent du portefeuille satisfait à la distribution normale de nombres aléatoires censurée. En gros, les nombres aléatoires sont extraits d'une distribution normale censurée, et le nombre total est divisé par la valeur totale pour obtenir le facteur de correction, puis le facteur de correction est multiplié par tous les nombres aléatoires pour obtenir la valeur de l'enveloppe rouge.
Cette répartition signifie : il y a plus d'enveloppes rouges en dessous de la moyenne, mais pas loin de la moyenne ; il y a peu d'enveloppes rouges au dessus de la moyenne, mais il y a plus d'enveloppes rouges qui sont beaucoup plus grandes que la moyenne.
Figure 1. La valeur du portefeuille et son histogramme de distribution de fréquence et son ajustement normal
Mais regarder l'histogramme de distribution ne permet pas de déduire qu'il est conforme à la normale distribution , mais compte tenu de la simplicité du programme et de la rationalité des nombres aléatoires, c'est l'hypothèse la plus raisonnable.
2. Les portefeuilles ultérieurs ont généralement plus de valeur
Figure 2. La courbe de relation entre le numéro de série du portefeuille et sa valeur
À partir de la ligne rouge d'ajustement linéaire de la figure 2, nous pouvons voir que la tendance globale de changement de la valeur du portefeuille augmente lentement et que sa plage de changement est approximativement un « canal » délimité par les limites supérieure et inférieure de la ligne pointillée verte. . (La courbe peut être enfermée dans un tel "canal" régulier, ce qui reflète également la rationalité de la règle 1 de côté et illustre que les nombres aléatoires ne sont pas uniformément distribués)
À partir d'une autre moyenne, ce modèle peut également être vu dans la figure.
Figure 3. La courbe d'évolution du nombre moyen avec le numéro de séquence
Dans l'échantillon, un portefeuille d'une valeur de 1000 a été divisé en 100 parties, la moyenne est de 10. Cependant, sur la figure 3, nous pouvons voir qu'avant le dernier portefeuille, la moyenne était inférieure à 10, ce qui montre que la valeur du portefeuille au début est faible et a été tirée vers le haut par la valeur du portefeuille plus tard. période. Meilleure valeur.
3. Bien entendu, le graphique moyen peut également révéler une autre règle, c'est-à-dire que la dernière personne a souvent la chance de tirer davantage. Parce que la dernière personne obtient ce qui reste dans son portefeuille et que la moyenne de tous ceux qui la précèdent est inférieure à 10, il est au moins garanti que la dernière personne sera supérieure à la moyenne. Dans cet échantillon, le portefeuille numéro 98 en a tiré 35, tandis que le dernier portefeuille en a tiré 46.
Pour résumer, sur la base de l'échantillon de supposition :
1 La plupart du temps, l'argent tiré est aussi petit que les autres, mais une fois qu'il est obtenu. c'est plus, cela devient beaucoup plus facile.
2. Plus vous sortez le portefeuille à l'arrière, plus il est facile de gagner de l'argent.
3. La dernière personne a souvent de la chance.

Outils d'IA chauds

Undress AI Tool
Images de déshabillage gratuites

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Clothoff.io
Dissolvant de vêtements AI

Video Face Swap
Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Nice Comics, une plate-forme d'expérience de lecture immersive dédiée à la création pour les amateurs de bandes dessinées, rassemble un grand nombre de ressources de bande dessinée de haute qualité au pays et à l'étranger. Ce n'est pas seulement une plate-forme de lecture de bandes dessinées, mais aussi une communauté qui relie les artistes comiques et les lecteurs et partage la culture comique. Grâce à la conception d'interface simple et intuitive et aux fonctions de recherche puissantes, NES Comics vous permet de trouver facilement vos œuvres préférées et de profiter d'une expérience de lecture fluide et confortable. Dites au revoir aux longues opérations en attente et fastidieuses, entrez immédiatement dans le monde de belles bandes dessinées et commencez votre voyage comique!

Frogman Comics est devenu le premier choix pour de nombreux amateurs de bandes dessinées avec ses ressources comiques riches et diverses et son expérience de lecture en ligne pratique et fluide. C'est comme un étang dynamique, avec des histoires fraîches et intéressantes constamment en émergeant, attendant que vous découvriez et explorez. Frog Man Comics couvre une variété de sujets, des aventures passionnées au doux amour, de la fantaisie et de la science-fiction au raisonnement de suspense, quel que soit le genre que vous aimez, vous pouvez trouver vos œuvres préférées ici. Sa conception d'interface simple et intuitive vous permet de démarrer facilement, de trouver rapidement les bandes dessinées que vous souhaitez lire et de vous immerger dans le monde de la bande dessinée passionnant.

Oui, mais il y a des restrictions. ① Vous pouvez vous connecter au même compte sur les téléphones iPhone et Android, mais vous connecter au dernier appareil entraînera la première session de la session; ② Vous pouvez vous connecter en même temps sur le téléphone mobile et le bureau de l'ordinateur, mais les fonctions ne sont pas synchronisées; ③ Bien que l'utilisation d'outils tiers ou de fonctions à double application puisse permettre la journalisation entre deux téléphones mobiles, il est officiellement pris en charge et peut violer les réglementations; ④ Les solutions alternatives incluent l'utilisation de la version Web / version de bureau pour correspondre au téléphone principal, ou transférer des enregistrements de chat via des outils de sauvegarde et de fichier cloud. Certaines machines Android peuvent également utiliser "Dual Applications" pour exécuter deux instances de compte.

Les utilisateurs de téléphone mobile Android peuvent télécharger et installer l'application Huobi / Huobi via les étapes suivantes: 1. Assurez-vous que le réseau est stable et que l'espace de stockage est suffisant; 2. Téléchargez l'application via le site officiel de Huobi / Huobi, utilisez le navigateur pour accéder au site Web officiel et cliquez sur le lien de téléchargement ou scannez le code QR, ou recherchez et téléchargez via des magasins d'applications tiers tels que Apptreasure et Huawei App Applic Market, et vous pouvez également obtenir le package d'installation via le partage des amis; 3. Trouvez le fichier .APK téléchargé, activez l'autorisation d'installation de "Application Source inconnue", suivez les invites pour terminer l'installation, etc.

Pour trouver en toute sécurité le portail de connexion officiel de la version Web OUYI, vous devez d'abord obtenir des informations via la chaîne officielle et confirmer de manière transversale avec l'outil de navigateur pour la vérification du nom de domaine. Les utilisateurs doivent obtenir des informations d'entrée à partir d'annonces officielles, de comptes de médias sociaux et d'invites dans l'application.

Les étapes de téléchargement et d'installation du client Android Yiou Exchange (OKX) sont les suivantes: 1. Téléchargez le package d'installation authentique officiel via le site officiel www.okx.com ou le code QR officiel; 2. Trouvez le fichier .apk téléchargé dans le gestionnaire de fichiers de téléphone mobile et activez l'autorisation d'installation "Source inconnue"; 3. Cliquez sur le package d'installation à installer, et une fois l'installation terminée, ouvrez l'application et inscrivez-vous ou connectez-vous au compte; 4. Configurer des mots de passe complexes, activer la vérification secondaire, modifier régulièrement des mots de passe, conserver correctement les clés privées et les mnémoniques et se méfier des sites Web de phishing pour garantir la sécurité du compte.

L'application Huobi est la principale plateforme de trading d'actifs numériques au monde, offrant des services de trading sûrs, pratiques et professionnels. En tant que plate-forme fiable par des millions d'utilisateurs du monde entier, l'application Huobi prend en charge les transactions de diverses monnaies numériques traditionnelles telles que Bitcoin et Ethereum, et fournit une variété d'outils de trading tels que Spot, Contracts et Ledefult. La dernière version de V10.52.0 optimise le moteur de trading, améliore la vitesse et la stabilité, ajoute une variété de nouvelles fonctions de trading et renforce la protection de la sécurité.

OKX est la principale plateforme de trading d'actifs numériques au monde, fournissant le trading de devises, le trading de levier, le trading de contrats, le défi et d'autres modes de trading. Les utilisateurs peuvent télécharger, s'inscrire, se connecter et terminer les paramètres de sécurité via les étapes suivantes: 1. Téléchargez l'application via le site Web officiel, scannez le code QR, l'App Store ou le TestFlight; 2. Ouvrez l'application pour sélectionner un numéro de téléphone mobile ou une inscription par e-mail, remplir des informations et définir le mot de passe, remplir éventuellement le code d'invitation et accepter l'accord pour terminer l'enregistrement; 3. Entrez le mot de passe du compte lors de la connexion et complétez la vérification de sécurité via le code de vérification coulissant, la vérification SMS ou Google; 4. Entrez le centre personnel pour l'authentification KYC, sélectionnez le niveau, remplissez des informations, téléchargez des documents et soumettez l'examen; 5. Bind Google Vérificateur, définissez un mot de passe en capital et activez la vérification SMS.
