Maison Applet WeChat Développement WeChat Conjecture sur le principe de mise en œuvre des enveloppes rouges WeChat

Conjecture sur le principe de mise en œuvre des enveloppes rouges WeChat

Feb 10, 2017 pm 02:31 PM
原理 微信 红包

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.

FAQ

Puisqu'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 ?

Réconciliation principale et de secours


Le nombre d'enveloppes rouges a disparu, mais le solde est toujours là ?

Non, le programme aura une opération de type take all et une garantie de rapprochement asynchrone à la fin.


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 ?

Ce n’est pas absolument égal, c’est juste un simple algorithme de tapotement cérébral.


Avec l'algorithme des tapotements de tête, y aura-t-il deux meilleurs ?

Il y aura le même montant, mais il n'y a qu'un seul chanceux, celui qui l'attrape en premier est le meilleur.


L'argent de la personne qui donne l'enveloppe rouge sera-t-il gelé ?

Il est déduit directement en temps réel, non gelé.


Pourquoi utiliser le calcul du montant en temps réel ?

L'efficacité en temps réel est plus élevée, mais l'efficacité budgétaire est faible. Le budget prend également en compte le stockage supplémentaire. Comme l’enveloppe rouge n’occupe qu’un seul enregistrement et n’est valable que quelques jours, elle ne prend pas beaucoup de place. Même lorsque la pression est élevée, la machine à expansion horizontale l'est.


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.

Conjecture sur le principe de mise en œuvre des enveloppes rouges WeChatFigure 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

Conjecture sur le principe de mise en œuvre des enveloppes rouges WeChatFigure 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.

Conjecture sur le principe de mise en œuvre des enveloppes rouges WeChat


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.

Conjecture sur le principe de mise en œuvre des enveloppes rouges WeChat

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.

Déclaration de ce site Web
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

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

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

AI Clothes Remover

AI Clothes Remover

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

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
2 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Repo: Comment relancer ses coéquipiers
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: Comment obtenir des graines géantes
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Combien de temps faut-il pour battre Split Fiction?
3 Il y a quelques semaines By DDD

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

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

Puis-je voir des visiteurs dans WeChat Moments ? Puis-je voir des visiteurs dans WeChat Moments ? May 06, 2024 pm 01:30 PM

1. WeChat est une plateforme sociale qui prête attention à la protection de la vie privée. Les utilisateurs ne peuvent pas voir qui a visité leurs Moments ou leur page d'accueil personnelle. 2. Cette conception est destinée à protéger la vie privée des utilisateurs et à éviter tout harcèlement ou espionnage potentiel. 3. Les utilisateurs ne peuvent voir que les enregistrements de likes et de commentaires dans leur cercle d'amis, garantissant ainsi la confidentialité des informations personnelles.

Il y a des rumeurs selon lesquelles 'l'iPhone 16 pourrait ne pas prendre en charge WeChat', et le consultant technique d'Apple en Chine a déclaré qu'il communiquait avec Tencent au sujet des commissions de l'App Store. Il y a des rumeurs selon lesquelles 'l'iPhone 16 pourrait ne pas prendre en charge WeChat', et le consultant technique d'Apple en Chine a déclaré qu'il communiquait avec Tencent au sujet des commissions de l'App Store. Sep 02, 2024 pm 10:45 PM

Merci aux internautes Qing Qiechensi, HH_KK, Satomi Ishihara et Wu Yanzu du sud de la Chine pour avoir soumis des indices ! Selon les informations du 2 septembre, il y a eu des rumeurs récentes selon lesquelles "l'iPhone 16 pourrait ne pas prendre en charge WeChat". En réponse, un journaliste de Shell Finance a appelé la hotline officielle d'Apple en Chine pour savoir si les systèmes iOS ou les appareils Apple pouvaient continuer à le faire. utilisez WeChat et WeChat La question de savoir s'il peut continuer à être répertorié et téléchargé sur l'App Store d'Apple nécessite une communication et une discussion entre Apple et Tencent pour déterminer la situation future. Software App Store et WeChat Description du problème Le consultant technique du Software App Store a souligné que les développeurs pourraient devoir payer des frais pour mettre des logiciels sur l'Apple Store. Après avoir atteint un certain nombre de téléchargements, Apple devra payer les frais correspondants pour les téléchargements ultérieurs. Apple communique activement avec Tencent,

Tutoriel de génération d'images Deepseek Tutoriel de génération d'images Deepseek Feb 19, 2025 pm 04:15 PM

Deepseek: un puissant outil de génération d'images AI! Deepseek lui-même n'est pas un outil de génération d'images, mais sa puissante technologie de base fournit un support sous-jacent pour de nombreux outils de peinture d'IA. Vous voulez savoir comment utiliser Deepseek pour générer des images indirectement? Veuillez continuer à lire! Générez des images avec des outils AI basés sur Deepseek: Les étapes suivantes vous guideront pour utiliser ces outils: Lancez l'outil de peinture AI: Recherchez et ouvrez un outil de peinture AI basé sur Deepseek (par exemple, recherchez "Simple IA"). Sélectionnez le mode de dessin: sélectionnez "Drawing AI" ou fonction similaire et sélectionnez le type d'image en fonction de vos besoins, tels que "Anime Avatar", "paysage"

Comment récupérer l'historique des discussions supprimées sur WeChat Comment récupérer l'historique des discussions supprimées sur WeChat May 06, 2024 pm 01:29 PM

1. Pour récupérer l'historique des discussions WeChat supprimé, vous devez utiliser deux téléphones mobiles pour la migration des données. 2. Sur l'ancien téléphone, cliquez sur [Moi] → [Paramètres] → [Chat] → [Migration et sauvegarde de l'historique des discussions]. 3. Sélectionnez [Migrer] et définissez la plate-forme de l'appareil cible. Après avoir sélectionné l'historique des discussions à restaurer, cliquez sur [Démarrer]. 4. Connectez-vous ensuite au même compte sur le nouveau téléphone et scannez le code QR sur l'ancien téléphone pour lancer la migration. 5. Une fois la migration terminée, l'historique des discussions supprimées sera restauré sur le nouveau téléphone.

WeChat Lingqiantong est-il sûr ? WeChat Lingqiantong est-il sûr ? Apr 29, 2024 am 10:23 AM

1. WeChat Lingqiantong adopte un mécanisme de sécurité multicouche, comprenant une protection par mot de passe, une authentification par nom réel, une liaison de téléphone mobile, etc., pour garantir la sécurité des comptes d'utilisateurs. 2. WeChat Pay utilise diverses méthodes de cryptage, notamment la transmission cryptée SSL, la surveillance en temps réel, etc., pour garantir la sécurité des transactions. 3. WeChat Pay coopère également avec les banques et les institutions financières pour mettre en œuvre des mesures de contrôle et de prévention des risques afin de surveiller et de gérer les transactions anormales. 4. Lorsqu'ils utilisent WeChat Lingqiantong, les utilisateurs doivent également renforcer la protection des comptes personnels, définir des mots de passe complexes, changer régulièrement les mots de passe et ne pas divulguer d'informations personnelles à volonté.

Comment transférer l'historique des discussions WeChat vers un autre téléphone mobile Comment transférer l'historique des discussions WeChat vers un autre téléphone mobile May 08, 2024 am 11:20 AM

1. Sur l'ancien appareil, cliquez sur « Moi » → « Paramètres » → « Chat » → « Migration et sauvegarde de l'historique des discussions » → « Migrer ». 2. Sélectionnez l'appareil de la plate-forme cible à migrer, sélectionnez les enregistrements de discussion à migrer et cliquez sur « Démarrer ». 3. Connectez-vous avec le même compte WeChat sur le nouvel appareil et scannez le code QR pour démarrer la migration de l'historique des discussions.

Comment récupérer l'historique des discussions après avoir supprimé des amis sur WeChat Comment récupérer l'historique des discussions après avoir supprimé des amis sur WeChat Apr 29, 2024 am 11:01 AM

1. Ouvrez l'application WeChat, cliquez sur [Carnet d'adresses] en bas de l'interface, puis cliquez sur [Nouvel ami]. 2. Saisissez l'identifiant WeChat ou le surnom de l'ami dans le champ de recherche en haut de la page. 3. Si l'autre partie n'a pas supprimé l'utilisateur, celui-ci peut retrouver l'ami dans les résultats de recherche. 4. Cliquez sur l'ami pour accéder à la fenêtre de discussion avec lui et vous pourrez afficher l'historique des discussions précédentes.

Des personnes proches du dossier ont répondu que « WeChat pourrait ne pas prendre en charge l'Apple iPhone 16 » : les rumeurs sont des rumeurs Des personnes proches du dossier ont répondu que « WeChat pourrait ne pas prendre en charge l'Apple iPhone 16 » : les rumeurs sont des rumeurs Sep 02, 2024 pm 10:43 PM

Les rumeurs selon lesquelles WeChat prendrait en charge l'iPhone 16 ont été démystifiées. Merci aux internautes Xi Chuang Jiu Shi et HH_KK pour avoir soumis des indices ! Selon les informations du 2 septembre, des rumeurs courent aujourd'hui selon lesquelles WeChat pourrait ne pas prendre en charge l'iPhone 16, et l'iPhone ne pourra pas utiliser WeChat une fois mis à niveau vers le système iOS 18.2. Selon le « Daily Economic News », des personnes proches du dossier ont appris que cette rumeur était une rumeur. Réponse d'Apple : selon Shell Finance, le consultant technique d'Apple en Chine a répondu que la question de savoir si WeChat peut continuer à être utilisé sur les systèmes iOS ou les appareils Apple, et si WeChat peut continuer à être répertorié et téléchargé dans l'App Store d'Apple, doit être résolue. être résolu entre Apple et Tencent. Ce n'est que par la communication et la discussion que nous pourrons déterminer la situation future. Actuellement, Apple communique activement avec Tencent pour confirmer si Tencent continuera à

See all articles