ត្រឡប់ទៅប្លុក

តើត្រូវដឹងដោយរបៀបណាថាបរិស្ថានរបស់កម្មវិធីរុករកស្នាមម្រាមដៃពិតប្រាកដឬអត់? ធ្វើដូចម្តេចពេលការរកឃើញស្នាមម្រាមដៃមានភាពមិនប្រក្រតី?

ថាតើបរិស្ថានស្នាមម្រាមដៃ «ពិតប្រាកដ» ឬអត់ មិនអាស្រ័យលើពិន្ទុដែលគេហទំព័ររកឃើញមួយណាមួយឲ្យឡើយ ប៉ុន្តែអាស្រ័យលើថាតើសញ្ញានៃបណ្តាញ កម្មវិធីរុករក ប្រព័ន្ធ ផ្នែករឹង និងការអនុញ្ញាតត្រូវគ្នាទៅវិញទៅមកឬអត់ ហើយនៅតែមានស្ថេរភាពបន្ទាប់ពីដំណើរការច្រើនដង។ អត្ថបទនេះផ្តល់នូវវិធីសាស្ត្ររកឃើញតាមស្រទាប់ តារាងប្រៀបធៀបភាពមិនប្រក្រតីទូទៅ និងការណែនាំសម្រាប់ពិនិត្យជាជំហានៗក្នុងកម្មវិធីរុករកស្នាមម្រាមដៃ។

ដើម្បីវិនិច្ឆ័យថាតើបរិស្ថានរបស់កម្មវិធីរុករកស្នាមម្រាមដៃពិតប្រាកដឬអត់ យើងមិនអាចមើលតែថាគេហទំព័ររកឃើញណាមួយឲ្យ 90 ពិន្ទុ ឬ 100 ពិន្ទុនោះទេ។ ស្តង់ដារដែលមានន័យជាងនេះគឺ៖ មិនមានភាពផ្ទុយគ្នាច្បាស់លាស់រវាងសញ្ញានៃបណ្តាញ កម្មវិធីរុករក ប្រព័ន្ធប្រតិបត្តិការ ផ្នែករឹង និងការអនុញ្ញាតឡើយ។ បរិស្ថានតែមួយនៅតែមានស្ថេរភាពបន្ទាប់ពីដំណើរការច្រើនដង។ ហើយមុខងារដែលគេហទំព័រអាជីវកម្មត្រូវការអាចដំណើរការធម្មតា។

ឧបករណ៍រកឃើញបង្ហាញពណ៌បៃតង មិនមានន័យថាគ្រប់វេទិកាទាំងអស់នឹងទទួលយកបរិស្ថាននេះទេ។ ការបង្ហាញពណ៌ក្រហម ក៏មិនចាំបាច់មានន័យថាបរិស្ថានមិនអាចប្រើបានដែរ។ គេហទំព័ររកឃើញប្រើប្រាស់ច្បាប់ មូលដ្ឋានទិន្នន័យ និងគំរូដាក់ពិន្ទុផ្ទាល់ខ្លួន ដូច្នេះការសម្រេចចិត្តចុងក្រោយគួរតែផ្អែកលើវាលជាក់លាក់ គេហទំព័រគោលដៅ និងសេណារីយ៉ូអាជីវកម្មជាក់ស្តែង។

តើអ្វីទៅជាបរិស្ថានកម្មវិធីរុករក «ពិតប្រាកដ»

បរិស្ថានសមហេតុផលមួយជាធម្មតាបំពេញលក្ខខណ្ឌបួនយ៉ាង៖

  1. ភាពស៊ីសង្វាក់ផ្ទៃក្នុង៖ ស្នូលកម្មវិធីរុករក User-Agent ប្រព័ន្ធប្រតិបត្តិការ GPU ភាសា តំបន់ពេល និងតំបន់បណ្តាញអាចពន្យល់គ្នាទៅវិញទៅមកបាន។
  2. ស្ថេរភាពតាមពេលវេលា៖ ប៉ារ៉ាម៉ែត្រសំខាន់ៗមិនប្រែប្រួលខ្លាំងដោយគ្មានលំនាំបន្ទាប់ពីចាប់ផ្តើមឡើងវិញ។
  3. មុខងារអាចប្រើបាន៖ មុខងារដែលត្រូវការដូចជាការចូល ការផ្ទុកឡើង ការហៅជាវីដេអូ ការទូទាត់ ឬផ្ទាំងគ្រប់គ្រងផ្សាយពាណិជ្ជកម្មដំណើរការធម្មតា។
  4. ប្រភពអាចតាមដានបាន៖ ក្រុមការងារដឹងថាបរិស្ថាននេះភ្ជាប់ជាមួយគណនី ប្រូកស៊ី និងអ្នកទទួលខុសត្រូវណា ហើយការផ្លាស់ប្តូរការកំណត់មានកំណត់ត្រា។

«ប៉ារ៉ាម៉ែត្រនីមួយៗត្រូវដូចគ្នាទាំងស្រុងនឹងកុំព្យូទ័ររូបវ័ន្ត» មិនមែនជាលក្ខខណ្ឌចាំបាច់ទេ។ កម្មវិធីរុករកខ្លួនឯងបន្ថយភាពជាក់លាក់នៃទិន្នន័យ ដើម្បីការពារភាពឯកជន។ ឧទាហរណ៍ ការពន្យល់របស់ MDN អំពី deviceMemory បង្ហាញថា property នេះត្រឡប់តែតម្លៃអង្គចងចាំប្រហាក់ប្រហែលដែលបានបង្គត់ និងកំណត់ព្រំដែនប៉ុណ្ណោះ។ hardwareConcurrency ក៏អាចតិចជាងចំនួនប្រព័ន្ធដំណើរការឡូជីខលពិតប្រាកដរបស់ឧបករណ៍ដែរ។ ដូច្នេះ តម្លៃដែលរកឃើញមិនស្មើនឹងរបាយការណ៍រកឃើញផ្នែករឹងនោះទេ។

បង្កើត baseline មុនពេលរកឃើញ

កុំកែប៉ារ៉ាម៉ែត្រម្តងហើយម្តងទៀតដោយផ្ទាល់នៅក្នុងបរិស្ថានគណនីសំខាន់ដែលកំពុងដំណើរការ។ ជាដំបូង បង្កើតបរិស្ថានសាកល្បងមួយដែលមិនចូលគណនីអាជីវកម្ម ហើយកត់ត្រា៖

  • កំណែកម្មវិធីរុករកស្នាមម្រាមដៃ និងស្នូល Chromium។
  • ប្រព័ន្ធប្រតិបត្តិការ User-Agent និងភាពច្បាស់។
  • ប្រភេទប្រូកស៊ី IP ចេញ ប្រទេស និងទីក្រុង។
  • ការកំណត់ភាសា តំបន់ពេល និងទីតាំងភូមិសាស្ត្រ។
  • គោលការណ៍ WebRTC DNS Canvas WebGL និងពុម្ពអក្សរ។
  • ផ្នែកបន្ថែមដែលបានដំឡើង និងប៉ារ៉ាម៉ែត្រដំណើរការ។

ក្នុងពេលតែមួយ ប្រើឧបករណ៍រកឃើញពីរឬបីដើម្បីពិនិត្យឆ្លង ហើយរក្សាទុករូបថតអេក្រង់ ឬនាំចេញលទ្ធផល។ បន្ទាប់ពីនោះ កែប្រែតែអថេរមួយរាល់ពេល រួចប្រៀបធៀបជាមួយ baseline។ ទើបអាចដឹងថាភាពមិនប្រក្រតីកើតចេញពីប្រូកស៊ី ការកំណត់កម្មវិធីរុករក ផ្នែកបន្ថែម ឬក៏គេហទំព័ររកឃើញខ្លួនឯង។

ស្រទាប់ទីមួយ៖ ពិនិត្យចំណុចចេញបណ្តាញ

ជាដំបូង បញ្ជាក់ថា IP សាធារណៈដែលបង្ហាញក្នុងសំណើ HTTP គឺជា IP ប្រូកស៊ីដែលបរិស្ថានភ្ជាប់ឬអត់ រួចពិនិត្យ DNS WebRTC និង IPv6។

IP និង DNS

កត់ត្រា IP ចេញ ASN ISP ប្រទេស ទីក្រុង និងតំបន់ពេល។ មូលដ្ឋានទិន្នន័យផ្សេងគ្នាអាចវិនិច្ឆ័យទីក្រុង និងប្រភេទប្រូកស៊ីមិនដូចគ្នា។ ជម្លោះប្រទេស ឬ ASN គួរតែត្រូវបានពិនិត្យច្រើនជាងគម្លាតនៃទីក្រុងតែមួយ។

ប្រសិនបើសំណើ DNS ឆ្លងកាត់បណ្តាញក្នុងស្រុក រីឯការចូលមើលគេហទំព័រឆ្លងកាត់ប្រូកស៊ី គេហទំព័ររកឃើញអាចបង្ហាញថាតំបន់ DNS ខុសពីតំបន់ចេញ។ ជាអាទិភាព ពិនិត្យថាតើប្រូកស៊ីគាំទ្រ DNS ពីចម្ងាយឬអត់ តើកម្មវិធីរុករក ឬប្រព័ន្ធមានការកំណត់ DNS ដាច់ដោយឡែកឬទេ និងថាតើផ្នែកបន្ថែមកំពុងកែប្រែសំណើបណ្តាញឬអត់។

WebRTC

WebRTC ប្រមូលអាសយដ្ឋានបេក្ខជន ICE ដើម្បីបង្កើតការតភ្ជាប់ពីចំណុចទៅចំណុច។ RFC 8828 ពន្យល់ថា វាអាចលាតត្រដាងអាសយដ្ឋានសាធារណៈបន្ថែម អាសយដ្ឋានឯកជន ឬនៅពេលប្រូកស៊ីអនុញ្ញាតឲ្យភ្ជាប់ផ្ទាល់ អាចរំលងប្រូកស៊ី ហើយរកឃើញ IP សាធារណៈពិតប្រាកដ។

ការរកឃើញអាសយដ្ឋានឯកជន មិនមានន័យថា IP សាធារណៈពិតប្រាកដលេចធ្លាយនោះទេ។ 192.168.x.x 10.x.x.x ជាដើមគ្រាន់តែជាអាសយដ្ឋានបណ្តាញក្នុងស្រុកប៉ុណ្ណោះ។ អ្វីដែលពិតជាត្រូវផ្តោតលើគឺ៖ តើនៅក្នុងបេក្ខជន WebRTC មាន IP សាធារណៈមួយទៀតដែលមិនទាក់ទងនឹងចំណុចចេញប្រូកស៊ីលេចឡើងឬអត់។

ពេលដោះស្រាយ កុំបិទ WebRTC ទាំងអស់ដោយមេកានិក។ ការប្រជុំជាវីដេអូ សំឡេង និងការទំនាក់ទំនងពេលជាក់ស្តែងអាចពឹងផ្អែកលើវា។ គួរជ្រើសរើសតាមតម្រូវការអាជីវកម្ម៖ ឲ្យ WebRTC ធ្វើតាមផ្លូវប្រូកស៊ីលំនាំដើម ប្រើប្រូកស៊ី ឬ TURN ដែលគាំទ្រ UDP កំណត់ការលាតត្រដាងអាសយដ្ឋានក្នុងស្រុក ឬបិទវាពេលមិនត្រូវការទំនាក់ទំនងពេលជាក់ស្តែង។ បន្ទាប់ពីកែប្រែ ត្រូវសាកល្បងទាំងលទ្ធផលភាពឯកជន និងមុខងារអាជីវកម្ម។

ទីតាំងភូមិសាស្ត្រ

កូអរដោនេរបស់ Geolocation API របស់កម្មវិធីរុករកអាចមកពី GPS Wi-Fi IP បណ្តាញទូរស័ព្ទ ឬការបញ្ចូលរបស់អ្នកប្រើ។ ស្តង់ដារ W3C Geolocation បញ្ជាក់យ៉ាងច្បាស់ថា API មិនធានាថាត្រឡប់ទីតាំងពិតប្រាកដរបស់ឧបករណ៍ទេ។

ដូច្នេះ ភាពខុសគ្នាបន្តិចបន្តួចរវាងទីក្រុងតាម IP និងកូអរដោនេ Geolocation មិនមែនជាភាពមិនប្រក្រតីចាំបាច់ទេ។ អ្វីដែលសំខាន់ជាងនេះគឺ ថាតើមានជម្លោះមិនអាចពន្យល់បានរវាងប្រទេស តំបន់ពេល ភាសា និងតំបន់អាជីវកម្មឬទេ ហើយថាតើគេហទំព័របានទទួលការអនុញ្ញាតទីតាំងឬអត់។

ស្រទាប់ទីពីរ៖ ពិនិត្យកម្មវិធីរុករក និងប្រព័ន្ធប្រតិបត្តិការ

ផ្តោតលើការប្រៀបធៀបបន្សំខាងក្រោម៖

  • កំណែស្នូល Chromium និងកំណែចម្បងរបស់កម្មវិធីរុករកក្នុង User-Agent។
  • ប្រព័ន្ធប្រតិបត្តិការក្នុង User-Agent ជាមួយ platform UA Client Hints និងសំណុំពុម្ពអក្សរ។
  • ភាសាចំណុចប្រទាក់កម្មវិធីរុករក Accept-Language តំបន់ពេល និងទម្រង់តំបន់។
  • ភាពច្បាស់ សមាមាត្រភីកសែលឧបករណ៍ ទំហំបង្អួច និងសមត្ថភាពប៉ះ។
  • ការកំណត់អត្តសញ្ញាណទូរស័ព្ទជាមួយទំហំអេក្រង់ ប្រភេទទ្រនិច និងលក្ខណៈផ្នែករឹង។

ភាពមិនប្រក្រតីទូទៅគឺការកែ User-Agent ដោយដៃ តែមិនបានធ្វើសមកាលកម្មជាមួយស្នូល ឬ Client Hints។ ឬក៏សរសេរបរិស្ថាន Windows ជា macOS តែនៅតែរក្សាពុម្ពអក្សរ GPU និងលក្ខណៈអន្តរកម្មរបស់ Windows យ៉ាងច្បាស់។

មធ្យោបាយដែលមានសុវត្ថិភាពបំផុត មិនមែនជាការបង្កើតតម្លៃមួយម្តងៗទេ ប៉ុន្តែត្រូវប្រើ preset ប្រព័ន្ធដែលបានផ្ទៀងផ្ទាត់ ដើម្បីឲ្យស្នូល UA វេទិកា និងប៉ារ៉ាម៉ែត្រពាក់ព័ន្ធត្រូវបានធ្វើបច្ចុប្បន្នភាពជាក្រុមតែមួយ។ បន្ទាប់ពីដំឡើងស្នូលថ្មី បង្កើត ឬពិនិត្យ User-Agent ឡើងវិញ កុំចាក់សោរកំណែដែលហួសសម័យច្បាស់លាស់ក្នុងរយៈពេលយូរ។

ស្រទាប់ទីបី៖ ពិនិត្យសញ្ញាផ្នែករឹង និងការបង្ហាញ

Canvas WebGL AudioContext ពុម្ពអក្សរ CPU អង្គចងចាំ ឧបករណ៍ប្រព័ន្ធផ្សព្វផ្សាយ និង ClientRects សុទ្ធតែអាចចូលរួមក្នុងការកំណត់អត្តសញ្ញាណបរិស្ថាន។ ពេលពិនិត្យ ត្រូវផ្តោតលើ «បន្សំសមហេតុផលឬអត់» និង «មានស្ថេរភាពឬអត់» មិនមែនដេញតាម hash តែមួយគត់នោះទេ។

WebGL និង GPU

ប្រសិនបើបរិស្ថានអះអាងថាជាប្រព័ន្ធប្រតិបត្តិការ ឬឧបករណ៍ប្រភេទណាមួយ ប៉ុន្តែក្រុមហ៊ុនផលិត WebGL renderer និងស្ថានភាពពន្លឿនផ្នែករឹងមិនអាចកើតឡើងជាមួយគ្នាបានច្បាស់លាស់ទេ នោះត្រូវត្រឡប់ទៅពិនិត្យ preset ប្រព័ន្ធវិញ។ កុំប្តូរឈ្មោះក្រុមហ៊ុនផលិតទៅម៉ាកមួយទៀតដោយចៃដន្យ ដើម្បីតែឆ្លងកាត់គេហទំព័ររកឃើញមួយប៉ុណ្ណោះ។ បន្សំខុសជាធម្មតាបង្កើតភាពផ្ទុយគ្នាកាន់តែច្រើន។

CPU និងអង្គចងចាំ

hardwareConcurrency តំណាងឲ្យចំនួនប្រព័ន្ធដំណើរការឡូជីខលដែលកម្មវិធីរុករកអាចប្រើបាន ហើយកម្មវិធីរុករកអាចរាយការណ៍តម្លៃទាបជាងដោយចេតនា។ deviceMemory គឺជាតម្លៃប្រហាក់ប្រហែលដែលបានបង្គត់។ ការឃើញ 4 cores ឬ 8GB មិនអាចបញ្ច្រាសសន្និដ្ឋានផ្នែករឹងពិតប្រាកដបានទេ ហើយក៏មិនគួរកែប្រែភ្លាមៗដោយសារតែវាខុសពីកុំព្យូទ័ររូបវ័ន្តដែរ។

អ្វីដែលត្រូវពិនិត្យគឺ៖ តម្លៃស្ថិតក្នុងជួរដែលកម្មវិធីរុករកគាំទ្រឬអត់ តើវាប៉ះទង្គិចជាមួយប្រភេទឧបករណ៍ទូរស័ព្ទ/កុំព្យូទ័រលើតុច្បាស់លាស់ឬទេ ហើយថាតើបរិស្ថានដូចគ្នារក្សាស្ថេរភាពសមហេតុផលបន្ទាប់ពីចាប់ផ្តើមឡើងវិញឬអត់។

Canvas និង Audio

គោលការណ៍ការពារភាពឯកជន ឬគោលការណ៍ noise អាចធ្វើឲ្យឧបករណ៍រូបវ័ន្តដូចគ្នាបង្កើតលទ្ធផលខុសគ្នាក្នុងបរិស្ថានផ្សេងគ្នា។ ប៉ុន្តែប្រសិនបើបរិស្ថានដូចគ្នាប្តូរ hash រាល់ពេលធ្វើ refresh ម្តង វាអាចមានន័យថាការចៃដន្យខ្លាំងពេក ហើយស្ថេរភាពនៃសម័យប្រើការយូរអង្វែងអាចកាន់តែអាក្រក់ទៅវិញ។

សាកល្បងលទ្ធផលនៃការ refresh ជាបន្តបន្ទាប់ ការបិទរួចបើកឡើងវិញ និងការដំណើរការនៅថ្ងៃបន្ទាប់ក្នុងបរិស្ថានដូចគ្នា។ ប្រសិនបើគោលការណ៍ត្រូវបានរចនាជា «noise ស្ថិរភាពកម្រិតបរិស្ថាន» បរិស្ថានដូចគ្នាគួរតែមានភាពបន្តដែលអាចពន្យល់បាន។

ស្រទាប់ទីបួន៖ ពិនិត្យការផ្ទុកទិន្នន័យ ផ្នែកបន្ថែម និងប៉ារ៉ាម៉ែត្រដំណើរការ

ភាពឯកោនៃបរិស្ថានមិនត្រឹមតែជាប៉ារ៉ាម៉ែត្រស្នាមម្រាមដៃប៉ុណ្ណោះទេ ប៉ុន្តែក៏រួមបញ្ចូល Cookie Local Storage IndexedDB ឃ្លាំងសម្ងាត់ Service Worker ផ្នែកបន្ថែម និងប្រវត្តិទាញយកផងដែរ។

ប្រើបរិស្ថានសាកល្បងពីរដើម្បីចូលគេហទំព័រសាកល្បងផ្សេងគ្នា បញ្ជាក់ថា Cookie និងការផ្ទុកក្នុងស្រុកមិនត្រូវបានប្រើច្រលំគ្នាទេ។ រួចពិនិត្យថាបន្ទាប់ពីសម្អាតឃ្លាំងសម្ងាត់ នាំចូល Cookie ឬស្តារបរិស្ថាន ទិន្នន័យត្រូវគ្នានឹងការរំពឹងទុកឬអត់។

ផ្នែកបន្ថែមគឺជាប្រភពរំខានទូទៅ។ វាអាចកែប្រែ User-Agent ប្រូកស៊ី បឋមកថាសំណើ Canvas WebRTC ឬស្គ្រីបទំព័រ។ ពេលរកឃើញភាពមិនប្រក្រតី ដំបូងត្រូវបិទផ្នែកបន្ថែមដែលមិនចាំបាច់ទាំងអស់ក្នុងច្បាប់ចម្លងសាកល្បង រួចបើកម្តងមួយ។ ប៉ារ៉ាម៉ែត្រដំណើរការផ្ទាល់ខ្លួនក៏គួរត្រូវបានដកចេញម្តងមួយដែរ ដើម្បីជៀសវាងឧបករណ៍ជាច្រើនកែប្រែសញ្ញាតែមួយក្នុងពេលដំណាលគ្នា។

ភាពមិនប្រក្រតីទូទៅ និងវិធីដោះស្រាយ

បាតុភាពមិនប្រក្រតីមូលហេតុដែលអាចកើតមានដំណោះស្រាយដែលណែនាំ
ប្រទេសតាម IP និងតំបន់ពេលមិនត្រូវគ្នាតំបន់ពេលត្រូវបានកំណត់ជាតម្លៃក្នុងស្រុក ឬការកំណត់តំបន់ប្រូកស៊ីខុសជាដំបូងផ្ទៀងផ្ទាត់ប្រទេសរបស់ប្រូកស៊ី រួចឲ្យតំបន់ពេលធ្វើតាម IP ឬកំណត់តាមតំបន់អាជីវកម្មពិតប្រាកដ
HTTP ចេញ និង IP សាធារណៈ WebRTC ខុសគ្នាWebRTC ភ្ជាប់ផ្ទាល់ ប្រូកស៊ីមិនគាំទ្រ UDP ឬការបំបែកផ្លូវកែតម្រូវគោលការណ៍ផ្លូវ WebRTC សាកល្បង UDP/TURN និងមុខងារអាជីវកម្ម
កំណែ UA និងស្នូលមិនត្រូវគ្នាUA ដោយដៃហួសសម័យ ឬមិនបានធ្វើសមកាលកម្មបន្ទាប់ពីដំឡើងស្នូលថ្មីប្រើ preset ដែលត្រូវគ្នា បង្កើត UA ឡើងវិញ ហើយសាកល្បង UA Client Hints ម្តងទៀត
អត្តសញ្ញាណ macOS ផ្គុំជាមួយពុម្ពអក្សរ/GPU Windowsបានកែតែវាលលើផ្ទៃត្រឡប់ទៅ preset កម្រិតប្រព័ន្ធ ជៀសវាងការផ្គុំដោយដៃឆ្លងប្រព័ន្ធ
Canvas ប្តូររាល់ពេល refreshnoise ចៃដន្យខ្លាំងពេក ឬផ្នែកបន្ថែមប៉ះទង្គិចគ្នាកំណត់ជាគោលការណ៍កម្រិតបរិស្ថាន បិទផ្នែកបន្ថែមដែលប៉ះទង្គិច រួចសាកល្បងម្តងទៀត
CPU ឬអង្គចងចាំត្រូវបានសម្គាល់ក្រហមគេហទំព័ររកឃើញយល់តម្លៃបង្គត់ជាផ្នែករឹងរូបវ័ន្តពិនិត្យរបៀប API របស់កម្មវិធីរុករកជាមុន រួចវិនិច្ឆ័យថាតើមានជម្លោះបន្សំពិតប្រាកដឬអត់
គេហទំព័ររកឃើញពីរសន្និដ្ឋានផ្ទុយគ្នាមូលដ្ឋានទិន្នន័យ ច្បាប់ និងល្បឿនធ្វើបច្ចុប្បន្នភាពខុសគ្នាប្រៀបធៀបវាលដើម កុំត្រឹមតែពិន្ទុសរុប យកការសាកល្បងអាជីវកម្មគោលដៅជាស្តង់ដារ
វាលសំខាន់ៗប្រែប្រួលបន្ទាប់ពីចាប់ផ្តើមឡើងវិញការកំណត់ចៃដន្យមិនត្រូវបានរក្សាទុក ឬបរិស្ថានត្រូវបានបង្កើតឡើងវិញពិនិត្យការរក្សាទុក សមកាលកម្ម និងគោលការណ៍ស្នាមម្រាមដៃចៃដន្យ កំណត់ប៉ារ៉ាម៉ែត្រកម្រិតបរិស្ថានឲ្យថេរ

ពិនិត្យតាមស្រទាប់នៅក្នុង PurpleMark

ប្រសិនបើការសន្និដ្ឋានខាងលើទាំងអស់មើលទៅធម្មតា ប៉ុន្តែវេទិកាមួយចំនួននៅតែបង្ហាញភាពមិនប្រក្រតី អ្នកអាចអនុវត្តសកម្មភាពពិនិត្យទៅលើបរិស្ថានជាក់លាក់ដែលត្រូវគ្នានៅក្នុង PurpleMark។

ជំហានទីមួយគឺបញ្ជាក់ចំណុចចេញ។ នៅក្នុងការគ្រប់គ្រងប្រូកស៊ីរបស់ PurpleMark មើលប្រូកស៊ីដែលបរិស្ថានបច្ចុប្បន្នភ្ជាប់ បញ្ជាក់ IP ចេញ តំបន់ និងតំបន់ពេលរបស់វា ប្រៀបធៀបជាមួយ IP សាធារណៈដែលគេហទំព័ររកឃើញបង្ហាញ រួចពិនិត្យថាតើ WebRTC មានអាសយដ្ឋានសាធារណៈមួយទៀតដែលមិនទាក់ទងនឹងចំណុចចេញឬអត់។

ជំហានទីពីរគឺពិនិត្យប៉ារ៉ាម៉ែត្រជាក្រុមមួយ ជាជាងកែដោយដៃម្តងមួយ។ នៅពេលបង្កើតបរិស្ថានក្នុង PurpleMark អ្នកអាចកំណត់ប្រព័ន្ធប្រតិបត្តិការ ស្នូល Chromium User-Agent ភាសា តំបន់ពេល និងទីតាំងភូមិសាស្ត្រក្នុងពេលតែមួយ ហើយកំណត់រចនាសម្ព័ន្ធប៉ារ៉ាម៉ែត្រស្នាមម្រាមដៃដូចជា WebGL WebRTC CPU អង្គចងចាំ Canvas ជាដើម។ ការឲ្យស្នូល UA ប្រព័ន្ធប្រតិបត្តិការ និងពុម្ពអក្សរដំណើរការលើ preset តែមួយ អាចជៀសវាងលទ្ធផលផ្ទុយគ្នាដូចជា «ពុម្ពអក្សរ Windows ផ្គុំជាមួយអត្តសញ្ញាណ macOS»។ មុនពេលបង្កើត សូមមើលការមើលជាមុនរបស់បរិស្ថាន បញ្ជាក់ថាបន្សំវាលនីមួយៗសមហេតុផល រួចទើបរក្សាទុក និងប្រើប្រាស់។

ជំហានទីបីគឺធ្វើការពិសោធដោយសុវត្ថិភាព។ ចម្លងបរិស្ថានដែលមានបញ្ហាមួយជាច្បាប់ចម្លងសាកល្បង កុំកែប្រែម្តងហើយម្តងទៀតលើបរិស្ថានដែលកំពុងដំណើរការ។ រាល់ពេលកែតែអថេរមួយ — ឧទាហរណ៍ ដំបូងកែប្រូកស៊ី ឬផ្លូវ WebRTC រួចកែគោលការណ៍ noise របស់ Canvas — រាល់ពេលកែរួច រក្សាទុកលទ្ធផលរកឃើញ ចាប់ផ្តើមឡើងវិញពីរដងជាប់គ្នាដើម្បីបញ្ជាក់ស្ថេរភាព រួចរត់ដំណើរការអាជីវកម្មពិតប្រាកដរបស់គេហទំព័រគោលដៅម្តងទៀត។ ប្រសិនបើសង្ស័យថាផ្នែកបន្ថែមរំខាន សូមបើកម្តងមួយក្នុងច្បាប់ចម្លងដើម្បីពិនិត្យ។

សកម្មភាពទាំងនេះអាចជួយអ្នកពិនិត្យចំណុចចេញ បន្សំប៉ារ៉ាម៉ែត្រ និងស្ថេរភាពក្នុងការកំណត់មួយឈុតដូចគ្នា ដែលធ្វើឲ្យការកំណត់ទីតាំង «លទ្ធផលរកឃើញមកពីស្រទាប់ណា» កាន់តែងាយស្រួល។ គួរបញ្ជាក់ថា PurpleMark ទទួលខុសត្រូវលើការរក្សាប៉ារ៉ាម៉ែត្រឲ្យស្របគ្នា និងរក្សាបរិស្ថានដែលអាចបង្កើតឡើងវិញបាន។ ការសន្និដ្ឋានរកឃើញចុងក្រោយនៅតែអាស្រ័យលើគុណភាពប្រូកស៊ី កំណែកម្មវិធីរុករក ផ្នែកបន្ថែម ផ្លូវបណ្តាញ និងតក្កវិជ្ជាសម្រេចផ្ទាល់របស់គេហទំព័រគោលដៅ។

កុំបង្កើតភាពមិនប្រក្រតីថ្មីដើម្បីបានពិន្ទុពេញ

ពិន្ទុរបស់គេហទំព័ររកឃើញស័ក្តិសមសម្រាប់ការស្វែងរកតម្រុយ មិនស័ក្តិសមធ្វើជាគោលដៅតែមួយនោះទេ។ ការប្តូរ UA GPU Canvas ពុម្ពអក្សរ និងតំបន់ពេលញឹកញាប់ អាចធ្វើឲ្យបរិស្ថានមិនស្ថិរភាពជាងដើម។ ការចម្លង «ប៉ារ៉ាម៉ែត្រពិន្ទុពេញ» របស់អ្នកដទៃ ក៏មិនអាចចម្លងបណ្តាញ ផ្នែករឹង និងប្រវត្តិការប្រើប្រាស់របស់គេបានដែរ។

វិធីត្រឹមត្រូវគឺចាប់ផ្តើមពីវាលដើម៖ ជាដំបូងជួសជុលភាពផ្ទុយគ្នាច្បាស់លាស់ រួចផ្ទៀងផ្ទាត់ស្ថេរភាពយូរអង្វែង និងមុខងារអាជីវកម្ម។ បរិស្ថានដែលពិន្ទុមិនខ្ពស់បំផុត ប៉ុន្តែបន្សំសមហេតុផល និងមានស្ថេរភាពជាបន្តបន្ទាប់ ជាធម្មតាងាយស្រួលគ្រប់គ្រងជាង «បរិស្ថានពិន្ទុពេញ» ដែលប្រែប្រួលរាល់ពេលរកឃើញ។