ਵਿਸ਼ਾ - ਸੂਚੀ[ਛੁਪਾਓ][ਦਿਖਾਓ]
WhatsApp ਇੱਕ ਸੋਸ਼ਲ ਮੈਸੇਜਿੰਗ ਪ੍ਰੋਗਰਾਮ ਹੈ ਜੋ ਉਪਭੋਗਤਾਵਾਂ ਨੂੰ ਇੱਕ ਦੂਜੇ ਨਾਲ ਸੰਦੇਸ਼ਾਂ ਦਾ ਆਦਾਨ-ਪ੍ਰਦਾਨ ਕਰਨ ਦੀ ਆਗਿਆ ਦਿੰਦਾ ਹੈ।
ਕੀ ਤੁਸੀਂ ਕਦੇ ਸੋਚਿਆ ਹੈ ਕਿ WhatsApp ਕਿਵੇਂ ਕੰਮ ਕਰਦਾ ਹੈ?
ਉਹ ਕਿਹੜੀਆਂ ਧਾਰਨਾਵਾਂ ਹਨ ਜੋ ਇਸਦੀ ਰਚਨਾ ਅਤੇ ਸੰਚਾਲਨ ਨੂੰ ਦਰਸਾਉਂਦੀਆਂ ਹਨ?
ਇਹ ਲੇਖ ਵਟਸਐਪ ਦੀਆਂ ਬੁਨਿਆਦੀ ਗੱਲਾਂ 'ਤੇ ਜਾਵੇਗਾ ਸਿਸਟਮ ਡਿਜ਼ਾਈਨ.
ਅਸੀਂ WhatsApp ਦੇ ਜਨਰਲ ਆਰਕੀਟੈਕਚਰ ਨੂੰ ਵੀ ਦੇਖਾਂਗੇ, ਜਿਸਦੀ ਵਰਤੋਂ ਕਿਸੇ ਵੀ ਕਿਸਮ ਦੇ ਚੈਟ ਸੌਫਟਵੇਅਰ ਬਣਾਉਣ ਲਈ ਕੀਤੀ ਜਾ ਸਕਦੀ ਹੈ।
ਇਸ ਲਈ, ਬਿਨਾਂ ਕਿਸੇ ਰੁਕਾਵਟ ਦੇ, ਆਓ WhatsApp ਦੇ ਸਿਸਟਮ ਡਿਜ਼ਾਈਨ 'ਤੇ ਇੱਕ ਨਜ਼ਰ ਮਾਰੀਏ!
1. ਮੁੱਖ ਲੋੜਾਂ
ਵਟਸਐਪ ਇੱਕ ਬਹੁਤ ਹੀ ਮਾਪਯੋਗ ਤਕਨੀਕ ਹੈ ਜਿਸਦੀ ਵਰਤੋਂ ਪੂਰੀ ਦੁਨੀਆ ਵਿੱਚ ਬਹੁਤ ਸਾਰੇ ਲੋਕ ਕਰਦੇ ਹਨ। ਨਤੀਜੇ ਵਜੋਂ, ਇਸ ਨੂੰ ਅਸਲ ਵਿੱਚ ਹਮੇਸ਼ਾ ਭਰੋਸੇਯੋਗ ਅਤੇ ਕਾਰਜਸ਼ੀਲ ਹੋਣ ਲਈ ਚੰਗੀ ਤਰ੍ਹਾਂ ਡਿਜ਼ਾਇਨ ਕੀਤਾ ਜਾਣਾ ਚਾਹੀਦਾ ਹੈ।
ਨਤੀਜੇ ਵਜੋਂ, ਸਿਸਟਮ ਦੀਆਂ ਨਾਜ਼ੁਕ ਲੋੜਾਂ ਨੂੰ ਨਿਰਧਾਰਤ ਕਰਨਾ ਮਹੱਤਵਪੂਰਨ ਹੈ।
WhatsApp ਮੈਸੇਂਜਰ ਲਈ ਇਹ ਘੱਟੋ-ਘੱਟ ਲੋੜਾਂ ਹਨ:
- ਇੱਕ-ਨਾਲ-ਇੱਕ ਇੰਟਰੈਕਸ਼ਨ ਦੀ ਸਹੂਲਤ ਦੇਣ ਦੇ ਸਮਰੱਥ।
- ਸੁਨੇਹਾ ਰਸੀਦ ਅਤੇ ਆਖਰੀ ਵਾਰ ਦੇਖਿਆ ਜਾਣਾ ਦੋਵੇਂ ਸੰਭਵ ਹਨ (ਭੇਜਿਆ, ਡਿਲੀਵਰ ਕੀਤਾ ਅਤੇ ਪੜ੍ਹਿਆ ਗਿਆ)।
- ਐਂਡ-ਟੂ-ਐਂਡ ਐਨਕ੍ਰਿਪਸ਼ਨ ਅਤੇ ਮੀਡੀਆ ਸਹਾਇਤਾ (ਚਿੱਤਰ/ਵੀਡੀਓ) ਦੀ ਆਗਿਆ ਦਿਓ।
ਆਓ ਇਹ ਪਤਾ ਕਰੀਏ ਕਿ ਸਾਡੀ ਲੋੜੀਂਦੀ ਸੇਵਾ ਲਈ ਕਿੰਨੀ ਸਮਰੱਥਾ ਦੀ ਲੋੜ ਹੈ।
2. ਅਨੁਮਾਨਿਤ ਸਮਰੱਥਾ
ਸਾਡਾ ਉਦੇਸ਼ ਇੱਕ ਪਲੇਟਫਾਰਮ ਬਣਾਉਣਾ ਹੈ ਜੋ ਵੱਡੀ ਮਾਤਰਾ ਵਿੱਚ ਆਵਾਜਾਈ ਨੂੰ ਸੰਭਾਲਣ ਦੇ ਸਮਰੱਥ ਹੈ। ਮੰਨ ਲਓ ਕਿ ਪ੍ਰਤੀ ਦਿਨ 10 ਬਿਲੀਅਨ SMS ਭੇਜੇ ਜਾਂਦੇ ਹਨ। ਸਾਡੇ ਕੋਲ ਹੈ:
- ਹਰ ਰੋਜ਼, ਇੱਕ ਅਰਬ ਲੋਕਾਂ ਦੁਆਰਾ 10 ਬਿਲੀਅਨ SMS ਭੇਜੇ ਜਾਂਦੇ ਹਨ।
- ਪੀਕ ਟ੍ਰੈਫਿਕ (ਪ੍ਰਤੀ ਸਕਿੰਟ) 'ਤੇ, 700,000 ਲੋਕ ਸਰਗਰਮ ਸਨ (6X ਔਸਤ)
- ਪੀਕ ਵਰਤੋਂ ਦੇ ਦੌਰਾਨ, ਪ੍ਰਤੀ ਸਕਿੰਟ 40 ਮਿਲੀਅਨ ਸੰਦੇਸ਼ ਪ੍ਰਸਾਰਿਤ ਕੀਤੇ ਜਾਂਦੇ ਹਨ।
- ਇੱਕ ਸੁਨੇਹੇ ਦੀ ਔਸਤ ਲੰਬਾਈ 160 ਅੱਖਰ ਹੈ: 10B * 160 = 1.6TB ਡਾਟਾ ਹਰ ਰੋਜ਼ ਤਿਆਰ ਕੀਤਾ ਜਾਂਦਾ ਹੈ।
- ਦਸ ਸਾਲਾਂ ਦੀ ਸੇਵਾ ਨੂੰ ਉਦਾਹਰਣ ਵਜੋਂ ਲਓ: 10 * 1.6B * 365 PB
- ਸਮੁੱਚੀ ਐਪਲੀਕੇਸ਼ਨ ਮਾਈਕ੍ਰੋ ਸਰਵਿਸਿਜ਼ ਦੀ ਬਣੀ ਹੋਵੇਗੀ, ਜਿਨ੍ਹਾਂ ਵਿੱਚੋਂ ਹਰ ਇੱਕ ਵਿਸ਼ੇਸ਼ ਕਾਰਜ ਨੂੰ ਲਾਗੂ ਕਰੇਗਾ। ਮੰਨ ਲਓ ਕਿ ਇੱਕ ਸੁਨੇਹਾ ਭੇਜਣ ਵਿੱਚ 20 ਮਿਲੀਸਕਿੰਟ ਲੱਗਦੇ ਹਨ ਅਤੇ ਪ੍ਰਤੀ ਸਰਵਰ 100 ਸਮਕਾਲੀ ਕੁਨੈਕਸ਼ਨ ਹਨ। ਨਤੀਜੇ ਵਜੋਂ, ਲੋੜੀਂਦੇ ਚੈਟ ਸਰਵਰਾਂ ਦੀ ਅਨੁਮਾਨਿਤ ਸੰਖਿਆ = (ਚੈਟ ਸੁਨੇਹੇ ਪ੍ਰਤੀ ਸਕਿੰਟ ਲੇਟੈਂਸੀ)/ ਸਮਕਾਲੀ ਕੁਨੈਕਸ਼ਨ ਪ੍ਰਤੀ ਸਰਵਰ = 40M * 20ms / 100 = 8000 ਸਰਵਰ।
3. ਉੱਚ-ਪੱਧਰੀ ਆਰਕੀਟੈਕਚਰ
ਇਹ ਸਿਸਟਮ ਦੋ ਮੁੱਖ ਸੇਵਾਵਾਂ 'ਤੇ ਬਣਾਇਆ ਗਿਆ ਹੈ। ਉਦਾਹਰਨ ਲਈ, ਚੈਟ ਸੇਵਾ ਅਤੇ ਅਸਥਾਈ ਸੇਵਾ। ਚੈਟ ਸੇਵਾ ਉਪਭੋਗਤਾਵਾਂ ਦੇ ਔਨਲਾਈਨ ਸੁਨੇਹਿਆਂ ਦੁਆਰਾ ਉਤਪੰਨ ਸਾਰੇ ਟ੍ਰੈਫਿਕ ਨੂੰ ਸੰਭਾਲਦੀ ਹੈ। ਇਸਦੇ ਨਾਲ ਹੀ, ਜਦੋਂ ਉਪਭੋਗਤਾ ਔਫਲਾਈਨ ਹੁੰਦਾ ਹੈ ਤਾਂ ਅਸਥਾਈ ਸੇਵਾ ਟ੍ਰੈਫਿਕ ਨੂੰ ਸੰਭਾਲਦੀ ਹੈ.
ਜੇਕਰ ਉਪਭੋਗਤਾ ਔਨਲਾਈਨ ਹੈ, ਤਾਂ ਚੈਟ ਸੇਵਾ ਸੁਨੇਹੇ ਪਹੁੰਚਾਉਣ ਦੇ ਇੰਚਾਰਜ ਹੈ।
ਇਹ ਪੁਸ਼ਟੀ ਕਰੇਗਾ ਕਿ ਕੀ ਸੁਨੇਹੇ ਦਾ ਪ੍ਰਾਪਤਕਰਤਾ ਔਨਲਾਈਨ ਹੈ ਜਾਂ ਨਹੀਂ; ਜੇਕਰ ਪ੍ਰਾਪਤਕਰਤਾ ਔਨਲਾਈਨ ਹੈ, ਤਾਂ ਇਹ ਸੇਵਾ ਤੁਰੰਤ ਸੁਨੇਹਾ ਪ੍ਰਦਾਨ ਕਰੇਗੀ; ਜੇਕਰ ਪ੍ਰਾਪਤਕਰਤਾ ਔਨਲਾਈਨ ਨਹੀਂ ਹੈ, ਤਾਂ ਅਸਥਾਈ ਸੇਵਾ ਉਹਨਾਂ ਨੂੰ ਸੁਨੇਹਾ ਭੇਜੇਗੀ ਜਦੋਂ ਉਹ ਔਨਲਾਈਨ ਵਾਪਸ ਆਉਂਦੇ ਹਨ।
ਅਸਥਾਈ ਤੌਰ 'ਤੇ ਪਹੁੰਚਯੋਗ ਡੇਟਾ ਨੂੰ ਔਫਲਾਈਨ ਉਪਭੋਗਤਾ ਦੇ ਮੁੜ ਕਨੈਕਟ ਹੋਣ ਤੱਕ ਰੱਖਣ ਲਈ ਅਸਥਾਈ ਸੇਵਾ ਇੱਕ ਵੱਖਰਾ ਸਟੋਰੇਜ ਖੇਤਰ ਰੱਖਦੀ ਹੈ।
ਉੱਚ-ਪੱਧਰੀ API ਨੂੰ ਡਿਜ਼ਾਈਨ ਕਰਨਾ
ਇਸ ਸੇਵਾ ਵਿੱਚ ਸੁਨੇਹੇ ਭੇਜਣ ਅਤੇ ਪੜ੍ਹਨ ਲਈ ਦੋ ਉੱਚ-ਪੱਧਰੀ ਕਾਰਜਸ਼ੀਲ API ਹਨ। ਸਿਸਟਮ ਨੂੰ REST ਆਰਕੀਟੈਕਚਰ ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਲਾਗੂ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ।
ਸੁਨੇਹੇ ਭੇਜਣ ਲਈ ਮਾਪਦੰਡ
ਇਸ API ਦੀ ਵਰਤੋਂ ਦੋ ਉਪਭੋਗਤਾਵਾਂ ਵਿਚਕਾਰ ਸੰਦੇਸ਼ਾਂ ਨੂੰ ਸੰਚਾਰਿਤ ਕਰਨ ਲਈ ਕੀਤੀ ਜਾਵੇਗੀ।
ਗੱਲਬਾਤ ਦੇ ਮਾਪਦੰਡ
ਇਹ API ਥਰਿੱਡਡ ਚੈਟਾਂ ਨੂੰ ਪ੍ਰਦਰਸ਼ਿਤ ਕਰਨ ਲਈ ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ। ਜਦੋਂ ਤੁਸੀਂ ਵਟਸਐਪ ਖੋਲ੍ਹਦੇ ਹੋ ਤਾਂ ਸਭ ਤੋਂ ਪਹਿਲਾਂ ਇਸ ਗੱਲ 'ਤੇ ਗੌਰ ਕਰੋ। ਅਸੀਂ ਇੱਕ ਸਿੰਗਲ API ਪੁੱਛਗਿੱਛ ਵਿੱਚ ਇੱਕ ਉਪਭੋਗਤਾ ਲਈ ਸਿਰਫ ਕੁਝ ਸੁਨੇਹੇ ਪ੍ਰਾਪਤ ਕਰਨਾ ਚਾਹੁੰਦੇ ਹਾਂ। ਇਸ ਨੂੰ ਸੰਭਾਲਣ ਲਈ, ਆਫਸੈੱਟ ਅਤੇ ਸੰਦੇਸ਼ ਗਿਣਤੀ ਮਾਪਦੰਡਾਂ ਦੀ ਲੋੜ ਹੈ।
ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਦੇ ਫੰਕਸ਼ਨ ਕੀ ਹਨ ਜਿਵੇਂ ਕਿ ਆਖਰੀ ਵਾਰ ਦੇਖਿਆ ਗਿਆ, ਸਿੰਗਲ ਟਿਕ, ਅਤੇ ਡਬਲ ਟਿਕ?
ਇਹਨਾਂ ਸੇਵਾਵਾਂ ਦੀ ਤੈਨਾਤੀ ਵਿੱਚ ਮਹੱਤਵਪੂਰਨ ਭੂਮਿਕਾ ਰਸੀਦ ਸੇਵਾ ਦੀ ਹੈ। ਇਹ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਵਿਕਸਿਤ ਕੀਤੀਆਂ ਗਈਆਂ ਹਨ ਕਿਉਂਕਿ ਇਹ ਸੇਵਾ ਰਸੀਦ ਜਵਾਬਾਂ ਨੂੰ ਉਤਪੰਨ ਅਤੇ ਤਸਦੀਕ ਕਰਨਾ ਜਾਰੀ ਰੱਖਦੀ ਹੈ।
- ਸਿੰਗਲ ਟਿਕ: ਜਦੋਂ ਯੂਜ਼ਰ ਏ ਤੋਂ ਕੋਈ ਸੁਨੇਹਾ ਯੂਜ਼ਰ ਬੀ ਤੱਕ ਪਹੁੰਚਦਾ ਹੈ, ਤਾਂ ਸਰਵਰ ਇਹ ਸਵੀਕਾਰ ਕਰਦੇ ਹੋਏ ਇੱਕ ਸਿੰਗਲ ਟਿੱਕ ਭੇਜਦਾ ਹੈ ਕਿ ਸੁਨੇਹਾ ਪ੍ਰਸਾਰਿਤ ਕੀਤਾ ਗਿਆ ਹੈ।
- ਡਬਲ ਟਿੱਕ: ਸਰਵਰ ਦਾ ਸੁਨੇਹਾ ਉਪਭੋਗਤਾ B ਨੂੰ ਸਹੀ ਕੁਨੈਕਸ਼ਨ ਦੁਆਰਾ ਭੇਜੇ ਜਾਣ ਤੋਂ ਬਾਅਦ, ਉਪਭੋਗਤਾ B ਸਰਵਰ ਨੂੰ ਸੰਦੇਸ਼ ਦੀ ਰਸੀਦ ਨੂੰ ਸਵੀਕਾਰ ਕਰੇਗਾ। ਸਰਵਰ ਫਿਰ ਉਪਭੋਗਤਾ A ਨੂੰ ਇੱਕ ਹੋਰ ਰਸੀਦ ਪ੍ਰਦਾਨ ਕਰੇਗਾ। ਨਤੀਜੇ ਵਜੋਂ, ਇੱਕ ਡੁਪਲੀਕੇਟ ਟਿੱਕ ਦਿਖਾਈ ਦੇਵੇਗਾ.
- ਨੀਲਾ ਟਿੱਕ: ਉਪਭੋਗਤਾ ਬੀ ਸੰਦੇਸ਼ ਦੀ ਜਾਂਚ ਕਰਨ ਤੋਂ ਬਾਅਦ ਸਰਵਰ ਨੂੰ ਇੱਕ ਹੋਰ ਰਸੀਦ ਭੇਜੇਗਾ। ਸਰਵਰ ਫਿਰ ਉਪਭੋਗਤਾ A ਨੂੰ ਇੱਕ ਵਾਧੂ ਰਸੀਦ ਸੁਨੇਹਾ ਭੇਜੇਗਾ। ਇਸ ਤੋਂ ਬਾਅਦ ਯੂਜ਼ਰ ਏ ਦੀ ਸਕਰੀਨ 'ਤੇ ਬਲੂ ਟਿਕ ਦਿਖਾਈ ਦੇਵੇਗੀ।
- ਅਖੀਰ ਦੇਖਿਆ ਗਿਆ: ਦਿਲ ਦੀ ਧੜਕਣ ਵਿਧੀ ਪਿਛਲੀ ਵਾਰ ਦੇਖੀ ਗਈ ਵਿਸ਼ੇਸ਼ਤਾ ਲਈ ਪੂਰੀ ਤਰ੍ਹਾਂ ਜ਼ਿੰਮੇਵਾਰ ਹੈ। ਹਰ 5 ਸਕਿੰਟਾਂ ਵਿੱਚ, ਇੱਕ ਦਿਲ ਦੀ ਧੜਕਣ ਸਰਵਰ ਨੂੰ ਸੰਚਾਰਿਤ ਕੀਤੀ ਜਾਂਦੀ ਹੈ, ਜੋ ਇੱਕ ਸਾਰਣੀ ਵਿੱਚ ਹਰੇਕ ਉਪਭੋਗਤਾ ਦੀ ਆਖਰੀ ਵਾਰ ਦੇਖੀ ਗਈ ਸਥਿਤੀ ਦਾ ਰਿਕਾਰਡ ਰੱਖਦਾ ਹੈ ਜਿਸਨੂੰ ਕਿਸੇ ਹੋਰ ਉਪਭੋਗਤਾ ਦੁਆਰਾ ਆਸਾਨੀ ਨਾਲ ਐਕਸੈਸ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ।
4. ਮੁੱਖ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਨੂੰ ਡਿਜ਼ਾਈਨ ਕਰਨਾ
ਵਿਅਕਤੀਗਤ ਪਰਸਪਰ ਪ੍ਰਭਾਵ
ਇਹ ਚੈਟ ਸੇਵਾ ਦਾ ਜ਼ਰੂਰੀ ਹਿੱਸਾ ਹੈ। ਇੱਕ ਉਪਭੋਗਤਾ ਇਸ ਸੇਵਾ ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਕਿਸੇ ਹੋਰ ਉਪਭੋਗਤਾ ਨੂੰ ਸਿਰਫ਼ ਸੁਨੇਹੇ ਭੇਜ ਸਕਦਾ ਹੈ। ਆਓ ਦੇਖੀਏ ਕਿ ਇਹ ਕਿਵੇਂ ਕੰਮ ਕਰਦਾ ਹੈ:
ਮੰਨ ਲਓ ਕਿ ਜੈ ਆਯੁਸ਼ ਨਾਲ ਗੱਲਬਾਤ ਕਰਨਾ ਚਾਹੁੰਦਾ ਹੈ। ਜੈ ਇੱਕ ਚੈਟ ਸਰਵਰ ਨਾਲ ਜੁੜਿਆ ਹੋਇਆ ਹੈ ਜਿਸ ਨਾਲ ਉਸਨੂੰ ਸੁਨੇਹਾ ਪ੍ਰਾਪਤ ਹੁੰਦਾ ਹੈ। ਜੈ ਨੂੰ ਚੈਟ ਸਰਵਰ ਤੋਂ ਪੁਸ਼ਟੀ ਪ੍ਰਾਪਤ ਹੁੰਦੀ ਹੈ ਕਿ ਸੁਨੇਹਾ ਭੇਜਿਆ ਗਿਆ ਸੀ। ਚੈਟ ਸਰਵਰ ਹੁਣ ਡਾਟਾ ਸਟੋਰ ਤੋਂ ਚੈਟ ਸਰਵਰ ਬਾਰੇ ਜਾਣਕਾਰੀ ਮੰਗ ਰਿਹਾ ਹੈ ਜਿਸ ਨਾਲ ਆਯੂਸ਼ ਜੁੜਿਆ ਹੋਇਆ ਹੈ। ਜੈ ਦਾ ਚੈਟ ਸਰਵਰ ਹੁਣ ਆਯੂਸ਼ ਦੇ ਚੈਟ ਸਰਵਰ ਨੂੰ ਸੰਦੇਸ਼ ਭੇਜਦਾ ਹੈ, ਅਤੇ ਆਯੂਸ਼ ਇੱਕ ਪੁਸ਼ ਵਿਧੀ ਰਾਹੀਂ ਸੁਨੇਹਾ ਪ੍ਰਾਪਤ ਕਰਦਾ ਹੈ। ਆਯੂਸ਼ ਹੁਣ ਜੈ ਦੇ ਚੈਟ ਸਰਵਰ 'ਤੇ ਇੱਕ ਰਸੀਦ ਭੇਜਦਾ ਹੈ, ਜੋ ਜੈ ਨੂੰ ਸੂਚਿਤ ਕਰਦਾ ਹੈ ਕਿ ਸੁਨੇਹਾ ਡਿਲੀਵਰ ਹੋ ਗਿਆ ਹੈ। ਜੇਕਰ ਆਯੂਸ਼ ਨੇ ਮੈਸੇਜ ਨੂੰ ਦੁਬਾਰਾ ਪੜ੍ਹਿਆ, ਤਾਂ ਇੱਕ ਤਾਜ਼ਾ ਸਵੀਕਾਰਤਾ ਕਿ ਸੁਨੇਹਾ ਪੜ੍ਹਿਆ ਗਿਆ ਸੀ, ਜੈ ਨੂੰ ਦਿੱਤਾ ਗਿਆ।
ਉਪਭੋਗਤਾ ਗਤੀਵਿਧੀ ਦੀ ਸਥਿਤੀ
ਪਿਛਲੀ ਵਾਰ ਜਦੋਂ ਕੋਈ ਵਿਅਕਤੀ ਕਿਰਿਆਸ਼ੀਲ ਸੀ, ਤਤਕਾਲ ਸੰਦੇਸ਼ਵਾਹਕਾਂ ਦੀ ਇੱਕ ਨਿਯਮਤ ਵਿਸ਼ੇਸ਼ਤਾ ਹੈ।
ਕਲਾਇੰਟ ਅਤੇ ਸਰਵਰ ਵਿਚਕਾਰ ਇੱਕ ਕੁਨੈਕਸ਼ਨ ਬਣਾਈ ਰੱਖਣ ਲਈ ਇੱਕ ਸਿਸਟਮ ਨੂੰ ਇਸ ਚਿੱਤਰ ਵਿੱਚ ਦਰਸਾਇਆ ਗਿਆ ਹੈ। ਵੈੱਬ ਸਾਕਟਾਂ ਦੀ ਵਰਤੋਂ ਸਰਵਰ ਅਤੇ ਕਲਾਇੰਟ ਵਿਚਕਾਰ ਦੋ-ਦਿਸ਼ਾਵੀ ਸਬੰਧ ਸਥਾਪਤ ਕਰਨ ਲਈ ਕੀਤੀ ਜਾਂਦੀ ਸੀ। ਇਹ ਕਨੈਕਸ਼ਨ ਦਿਲ ਦੀ ਧੜਕਣ ਭੇਜਦੇ ਹਨ, ਜੋ ਉਪਭੋਗਤਾ ਦੀ ਗਤੀਵਿਧੀ ਸਥਿਤੀ ਦੀ ਨਿਗਰਾਨੀ ਕਰਨ ਲਈ ਵਰਤੇ ਜਾਂਦੇ ਹਨ।
ਅੰਤ-ਤੋਂ-ਅੰਤ ਗੋਪਨੀਯਤਾ
ਐਂਡ-ਟੂ-ਐਂਡ ਐਨਕ੍ਰਿਪਸ਼ਨ ਇੱਕ ਮੁੱਖ ਵਿਸ਼ੇਸ਼ਤਾ ਹੈ ਜੋ ਇਹ ਯਕੀਨੀ ਬਣਾਉਂਦੀ ਹੈ ਕਿ ਸਿਰਫ਼ ਗੱਲਬਾਤ ਕਰਨ ਵਾਲੇ ਉਪਭੋਗਤਾ ਹੀ ਸੰਚਾਰ ਪੜ੍ਹ ਸਕਦੇ ਹਨ। ਇੱਕ ਜਨਤਕ ਕੁੰਜੀ ਸੰਚਾਰ ਵਿੱਚ ਸ਼ਾਮਲ ਸਾਰੇ ਉਪਭੋਗਤਾਵਾਂ ਵਿੱਚ ਸਾਂਝੀ ਕੀਤੀ ਜਾਂਦੀ ਹੈ ਅਤੇ ਐਂਡ-ਟੂ-ਐਂਡ ਐਨਕ੍ਰਿਪਸ਼ਨ ਨੂੰ ਕਾਇਮ ਰੱਖਣ ਲਈ ਮਹੱਤਵਪੂਰਨ ਹੈ। ਮੰਨ ਲਓ ਕਿ ਚੈਨਲ 'ਤੇ ਦੋ ਉਪਭੋਗਤਾ ਹਨ, ਜੈ ਅਤੇ ਆਯੂਸ਼, ਜੋ ਇੱਕ ਦੂਜੇ ਨਾਲ ਸੰਚਾਰ ਕਰਦੇ ਹਨ।
ਜੈ ਕੋਲ ਆਯੂਸ਼ ਦੀ ਜਨਤਕ ਕੁੰਜੀ ਹੈ, ਅਤੇ ਆਯੂਸ਼ ਕੋਲ ਜੈ ਦੀ ਜਨਤਕ ਕੁੰਜੀ ਦੇ ਨਾਲ-ਨਾਲ ਉਹਨਾਂ ਦੀ ਗੈਰ-ਸਾਂਝੀ ਪ੍ਰਾਈਵੇਟ ਕੁੰਜੀ ਹੈ। ਨਤੀਜੇ ਵਜੋਂ, ਜਦੋਂ ਜੈ ਸੁਨੇਹਾ ਪ੍ਰਸਾਰਿਤ ਕਰਦਾ ਹੈ, ਤਾਂ ਉਹ ਇਸਨੂੰ ਆਯੂਸ਼ ਦੀ ਜਨਤਕ ਕੁੰਜੀ ਨਾਲ ਐਨਕ੍ਰਿਪਟ ਕਰਦਾ ਹੈ, ਜਿਸ ਨੂੰ ਸਿਰਫ਼ ਆਯੂਸ਼ ਦੀ ਨਿੱਜੀ ਕੁੰਜੀ ਨਾਲ ਡੀਕੋਡ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ।
ਇਸੇ ਤਰ੍ਹਾਂ, ਜੈ ਸਿਰਫ ਆਯੁਸ਼ ਦੇ ਸੰਚਾਰ ਨੂੰ ਡੀਕੋਡ ਕਰਨ ਦੇ ਯੋਗ ਹੋਵੇਗਾ। ਨਤੀਜੇ ਵਜੋਂ, ਸਿਰਫ਼ ਜੈ ਅਤੇ ਅਯਸੂਹ ਹੀ ਇੱਕ ਦੂਜੇ ਦੇ ਸੰਚਾਰ ਨੂੰ ਦੇਖ ਸਕਣਗੇ, ਅਤੇ ਸਰਵਰ ਪੂਰੀ ਪ੍ਰਕਿਰਿਆ ਵਿੱਚ ਸਿਰਫ਼ ਇੱਕ ਗੇਟਵੇ ਵਜੋਂ ਕੰਮ ਕਰੇਗਾ।
5. ਰੁਕਾਵਟਾਂ
ਹਰ ਸਿਸਟਮ ਖਰਾਬ ਹੋਣ ਦਾ ਖਤਰਾ ਹੈ। ਆਵਾਜਾਈ ਦੀ ਇੰਨੀ ਵੱਡੀ ਮਾਤਰਾ ਦਾ ਪ੍ਰਬੰਧਨ ਕਰਨ ਲਈ, ਰੁਕਾਵਟਾਂ ਤੋਂ ਬਚਣ ਲਈ ਸੇਵਾ ਨੂੰ ਹਰ ਸਮੇਂ ਕਾਰਜਸ਼ੀਲ ਅਤੇ ਨੁਕਸ-ਸਹਿਣਸ਼ੀਲ ਰਹਿਣਾ ਚਾਹੀਦਾ ਹੈ। ਕਿਉਂਕਿ ਸਾਡੀ ਸੇਵਾ ਪੂਰੀ ਤਰ੍ਹਾਂ ਚੈਟ ਅਤੇ ਅਸਥਾਈ ਸਰਵਰਾਂ 'ਤੇ ਨਿਰਭਰ ਹੈ, ਸਾਨੂੰ ਉਹਨਾਂ ਦੇ ਸੰਚਾਲਨ ਤੋਂ ਪੈਦਾ ਹੋਣ ਵਾਲੇ ਸਾਰੇ ਮੁੱਦਿਆਂ ਨੂੰ ਹੱਲ ਕਰਨਾ ਚਾਹੀਦਾ ਹੈ।
ਚੈਟ ਸਰਵਰ ਦੀ ਅਸਫਲਤਾ: ਇਹ ਸਾਡੇ ਸਿਸਟਮ ਦਾ ਦਿਲ ਹੈ। ਜਦੋਂ ਉਪਭੋਗਤਾ ਔਨਲਾਈਨ ਹੁੰਦੇ ਹਨ, ਤਾਂ ਇਹ ਸੁਨੇਹਿਆਂ ਦੇ ਪ੍ਰਬੰਧਨ ਅਤੇ ਪ੍ਰਦਾਨ ਕਰਨ ਲਈ ਜ਼ਿੰਮੇਵਾਰ ਹੁੰਦਾ ਹੈ। ਨਤੀਜੇ ਵਜੋਂ, ਇਹ ਸਿਸਟਮ ਆਪਣੇ ਉਪਭੋਗਤਾਵਾਂ ਨਾਲ ਸਬੰਧ ਕਾਇਮ ਰੱਖਦਾ ਹੈ।
ਨਤੀਜੇ ਵਜੋਂ, ਜੇਕਰ ਇਹ ਸੇਵਾ ਅਸਫਲ ਹੋ ਜਾਂਦੀ ਹੈ, ਤਾਂ ਪੂਰੇ ਢਾਂਚੇ ਨੂੰ ਨੁਕਸਾਨ ਹੋਵੇਗਾ। ਚੈਟ ਸਰਵਰ ਦੀ ਅਸਫਲਤਾ ਦੇ ਪ੍ਰਬੰਧਨ ਲਈ ਦੋ ਤਰੀਕੇ ਹਨ. ਇੱਕ ਤਰੀਕਾ ਹੈ TCP ਕਨੈਕਸ਼ਨਾਂ ਨੂੰ ਕਿਸੇ ਹੋਰ ਸਰਵਰ 'ਤੇ ਸ਼ਿਫਟ ਕਰਨਾ, ਜਦੋਂ ਕਿ ਦੂਜਾ ਤਰੀਕਾ ਉਪਭੋਗਤਾਵਾਂ ਨੂੰ ਕੁਨੈਕਸ਼ਨ ਗੁਆਉਣ ਦੀ ਸਥਿਤੀ ਵਿੱਚ ਆਪਣੇ ਆਪ ਕੁਨੈਕਸ਼ਨ ਸ਼ੁਰੂ ਕਰਨ ਦੀ ਆਗਿਆ ਦੇਣਾ ਹੈ।
ਅਸਥਾਈ ਸਟੋਰੇਜ ਦੀ ਅਸਫਲਤਾ: ਫੇਲ ਹੋਣ ਦਾ ਖ਼ਤਰਾ ਇਕ ਹੋਰ ਕੰਪੋਨੈਂਟ ਜੋ ਅੰਤ ਵਿੱਚ ਪੂਰੀ ਸੇਵਾ ਨੂੰ ਨੁਕਸਾਨ ਪਹੁੰਚਾ ਸਕਦਾ ਹੈ ਅਸਥਾਈ ਸਟੋਰੇਜ ਹੈ। ਜੇਕਰ ਇਹ ਸੇਵਾ ਫੇਲ ਹੋ ਜਾਂਦੀ ਹੈ ਤਾਂ ਔਫਲਾਈਨ ਉਪਭੋਗਤਾਵਾਂ ਦੇ ਰਸਤੇ ਵਿੱਚ ਸੁਨੇਹੇ ਗੁੰਮ ਹੋ ਜਾਂਦੇ ਹਨ।
ਅਸੀਂ ਹਰੇਕ ਉਪਭੋਗਤਾ ਦੀ ਅਸਥਾਈ ਸਟੋਰੇਜ ਦੀ ਨਕਲ ਕਰਕੇ ਸੰਦੇਸ਼ ਦੇ ਨੁਕਸਾਨ ਨੂੰ ਰੋਕ ਸਕਦੇ ਹਾਂ। ਨਤੀਜੇ ਵਜੋਂ, ਜਦੋਂ ਵੀ ਉਪਭੋਗਤਾ ਔਨਲਾਈਨ ਵਾਪਸ ਆਉਂਦਾ ਹੈ ਤਾਂ ਪ੍ਰਤੀਕ੍ਰਿਤੀ ਨੂੰ ਫੰਕਸ਼ਨਾਂ ਦੀ ਪ੍ਰਕਿਰਿਆ ਕਰਨ ਲਈ ਲਗਾਇਆ ਜਾ ਸਕਦਾ ਹੈ। ਜੇਕਰ ਅਸਲੀ ਸਰਵਰ ਪਹੁੰਚਯੋਗ ਹੋ ਜਾਂਦਾ ਹੈ, ਤਾਂ ਉਪਭੋਗਤਾ ਦੇ ਅਸਥਾਈ ਸਟੋਰੇਜ ਦੇ ਅਸਲ ਅਤੇ ਪ੍ਰਤੀਕ੍ਰਿਤੀ ਦੋਨਾਂ ਨੂੰ ਇੱਕ ਸਟੋਰ ਵਿੱਚ ਜੋੜਿਆ ਜਾਂਦਾ ਹੈ।
6. ਅਨੁਕੂਲਨ ਤਕਨੀਕਾਂ
ਲੈਟੈਂਸੀ: ਇੱਕ ਸਹਿਜ ਅਤੇ ਬਿਹਤਰ ਕਲਾਇੰਟ ਅਨੁਭਵ ਪ੍ਰਦਾਨ ਕਰਨ ਲਈ, ਮੈਸੇਂਜਰ ਸੇਵਾ ਅਸਲ-ਸਮੇਂ ਵਿੱਚ ਹੋਣੀ ਚਾਹੀਦੀ ਹੈ। ਨਤੀਜੇ ਵਜੋਂ, ਅਕਸਰ ਐਕਸੈਸ ਕੀਤੇ ਡੇਟਾ ਦੇ ਹਿੱਸੇ ਨੂੰ ਕੈਚ ਕਰਕੇ ਲੇਟੈਂਸੀ ਨੂੰ ਘਟਾਇਆ ਜਾਣਾ ਚਾਹੀਦਾ ਹੈ। ਅਸੀਂ Redis ਵਰਗੇ ਵਿਤਰਿਤ ਕੈਸ਼ ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਉਪਭੋਗਤਾ ਦੀ ਗਤੀਵਿਧੀ ਸਥਿਤੀ ਅਤੇ ਤਾਜ਼ਾ ਗੱਲਬਾਤ ਨੂੰ ਮੈਮੋਰੀ ਵਿੱਚ ਕੈਸ਼ ਕਰ ਸਕਦੇ ਹਾਂ।
ਉਪਲੱਬਧਤਾ: ਸਾਨੂੰ ਜ਼ਿਆਦਾਤਰ ਸਮਾਂ ਉਪਲਬਧ ਹੋਣ ਲਈ ਸਾਡੀ ਸੇਵਾ ਦੀ ਲੋੜ ਹੁੰਦੀ ਹੈ। ਸਾਡਾ ਸਿਸਟਮ ਨੁਕਸ-ਸਹਿਣਸ਼ੀਲ ਹੋਣਾ ਚਾਹੀਦਾ ਹੈ, ਇਸ ਤਰ੍ਹਾਂ ਅਸੀਂ ਅਸਥਾਈ ਸੁਨੇਹਿਆਂ ਦੀਆਂ ਕਈ ਕਾਪੀਆਂ ਰੱਖ ਸਕਦੇ ਹਾਂ ਤਾਂ ਜੋ ਕੋਈ ਵੀ ਸੁਨੇਹਾ ਜੋ ਗੁੰਮ ਹੋ ਗਿਆ ਹੈ, ਉਸ ਦੇ ਡੁਪਲੀਕੇਟ ਤੋਂ ਜਲਦੀ ਮੁੜ ਪ੍ਰਾਪਤ ਕੀਤਾ ਜਾ ਸਕੇ। ਨਤੀਜੇ ਵਜੋਂ, ਸਿਸਟਮ ਦੀ ਉਪਲਬਧਤਾ ਨੂੰ ਖਤਰੇ ਵਿੱਚ ਨਹੀਂ ਪਾਇਆ ਜਾ ਸਕਦਾ।
ਸਿੱਟਾ
ਸਾਡਾ ਸਿਸਟਮ ਹੁਣ ਸਿਰਫ ਕੁਝ ਕੁ ਸਮਰੱਥਾਵਾਂ ਦਾ ਸਮਰਥਨ ਕਰਦਾ ਹੈ, ਪਰ ਅਸੀਂ ਕਈ ਵਿਅਕਤੀਆਂ ਨੂੰ ਸੰਦੇਸ਼ਾਂ ਨੂੰ ਵੰਡਣ ਲਈ ਸਮੂਹ ਚੈਟ ਜੋੜਨ ਲਈ ਇਸਨੂੰ ਆਸਾਨੀ ਨਾਲ ਵਧਾ ਸਕਦੇ ਹਾਂ। ਤੁਸੀਂ ਵੀਡੀਓ ਅਤੇ ਫ਼ੋਨ ਕਾਲ ਸਮਰੱਥਾਵਾਂ ਵੀ ਪ੍ਰਦਾਨ ਕਰ ਸਕਦੇ ਹੋ। ਇਸ ਪ੍ਰਣਾਲੀ ਨੂੰ ਇਸ ਤਰ੍ਹਾਂ ਵੀ ਵਿਕਸਿਤ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ ਕਿ ਉਪਭੋਗਤਾ ਸਟੇਟਸ ਅੱਪਡੇਟ ਜਾਂ ਬਿਰਤਾਂਤ ਪ੍ਰਕਾਸ਼ਿਤ ਕਰ ਸਕਣ ਅਤੇ ਇੱਕ ਦੂਜੇ ਨੂੰ ਪੜ੍ਹ ਸਕਣ।
ਮੈਂ ਤੁਹਾਨੂੰ WhatsApp ਸਿਸਟਮ ਡਿਜ਼ਾਈਨ ਦੀ ਉੱਚ-ਪੱਧਰੀ ਸੰਖੇਪ ਜਾਣਕਾਰੀ ਪ੍ਰਦਾਨ ਕਰਨ ਲਈ ਸਖ਼ਤ ਮਿਹਨਤ ਕੀਤੀ ਹੈ। ਮੈਨੂੰ ਉਮੀਦ ਹੈ ਕਿ ਤੁਸੀਂ ਇਸਦਾ ਅਨੰਦ ਲਿਆ ਹੈ ਅਤੇ ਇਸਦੀ ਚੰਗੀ ਵਰਤੋਂ ਕਰੋਗੇ.
ਕੋਈ ਜਵਾਬ ਛੱਡਣਾ