ബ്രൗസറിലെ WebSocket ഹാർട്ട്ബീറ്റിന് ആപ്ലിക്കേഷൻ പ്രോട്ടോക്കോൾ വേണം
ബ്രൗസർ JavaScript-ന് WebSocket Ping ഫ്രെയിമുകൾ നേരിട്ട് അയക്കാൻ കഴിയാത്തപ്പോൾ ഒരു യോജിച്ച ആപ്ലിക്കേഷൻ ഹാർട്ട്ബീറ്റ് രൂപകൽപ്പന ചെയ്യുക.
ബ്രൗസറിന്റെ WebSocket API-യിൽ send() ഉണ്ട്. JavaScript-ന് പ്രോട്ടോക്കോളിന്റെ Ping ഫ്രെയിമുകൾ അയക്കാൻ അത് പൊതുവായ ഒരു ping() രീതി വെളിപ്പെടുത്തുന്നില്ല.
നിങ്ങളുടെ ആപ്ലിക്കേഷൻ {"type":"heartbeat"} പോലുള്ള ഒരു ടെക്സ്റ്റ് സന്ദേശം അയക്കുന്നുവെങ്കിൽ അത് ആപ്ലിക്കേഷൻ ഡാറ്റയാണ്. സർവറിന് സന്ദേശം മനസ്സിലാക്കി ഒരു പ്രതികരണം നിർവചിക്കേണ്ടതുണ്ട്. ആ കരാർ നടപ്പാക്കാത്ത സർവറിന് ടെക്സ്റ്റിൽ ping എന്ന വാക്ക് ഉള്ളതുകൊണ്ട് മാത്രം പ്രോട്ടോക്കോൾ Pong കൊണ്ട് മറുപടി നൽകാൻ ബാധ്യതയില്ല.
സമ്മതി എന്നതിന്റെ അർത്ഥം എന്താണെന്നും, അത് കാത്തിരിക്കുന്ന ഹാർട്ട്ബീറ്റിനെ എങ്ങനെ തിരിച്ചറിയുന്നുവെന്നും, പഴയ സമ്മതി എപ്പോൾ വളരെ വൈകുന്നുവെന്നും നിർവചിക്കുക. അത് ഒരു ബിസിനസ് പ്രവർത്തനത്തിന്റെ സമ്മതിയിൽ നിന്ന് വേർതിരിച്ച് നിർത്തുക.
JavaScript ടൈമറിനും ഷെഡ്യൂളിംഗ് പരിമിതികളുണ്ട്. പശ്ചാത്തല ടാബുകളും തിരക്കുള്ള പ്രധാന ത്രെഡുകളും കോൾബാക്കുകൾ വൈകിപ്പിക്കാം. നഷ്ടപ്പെട്ട കൃത്യമായ ടൈമർ പരിധിയെ പ്രോക്സി കൈമാറ്റം നിർത്തി എന്നതിന്റെ നിർണായക തെളിവായി വ്യാഖ്യാനിക്കരുത്.
ബ്രൗസറിന് പ്രോട്ടോക്കോളിന്റെ നിയന്ത്രണ ഫ്രെയിമുകൾ ആന്തരികമായി കൈകാര്യം ചെയ്യാം, പക്ഷേ അത് ആപ്ലിക്കേഷൻ കോഡിന് ഓരോ Ping അല്ലെങ്കിൽ Pong-ന്റെയും കൈമാറാവുന്ന കാഴ്ച നൽകുന്നില്ല. പേജിന് സ്വന്തം ജീവനക്ഷമതാ തീരുമാനം ആവശ്യമെങ്കിൽ വ്യക്തമായ ഒരു ആപ്ലിക്കേഷൻ കരാറും വീണ്ടെടുപ്പ് നയവും ഉപയോഗിക്കുക.
readyState OPEN ആയ ഒരു സോക്കറ്റ് പ്രാദേശികമായി തുറന്നതായി കണക്കാക്കുന്നു; വിദൂര ആപ്ലിക്കേഷൻ നിങ്ങളുടെ അവസാന സന്ദേശം പ്രോസസ്സ് ചെയ്തു എന്നതിന്റെ സ്വതന്ത്ര അളവല്ല അത്. യഥാർത്ഥത്തിൽ നിങ്ങൾക്ക് ഉത്തരം നൽകേണ്ട ചോദ്യത്തിന് യോജിക്കുന്ന തെളിവുകൾ ഉപയോഗിക്കുക.