Hacker News

ຄຸນສົມບັດໄວໃນ V8 (2017)

ຄຸນສົມບັດໄວໃນ V8 (2017) ການວິເຄາະທີ່ສົມບູນແບບຂອງໄວນີ້ສະຫນອງການກວດສອບລາຍລະອຽດຂອງອົງປະກອບຫຼັກຂອງມັນແລະຜົນສະທ້ອນທີ່ກວ້າງຂວາງ. ເຂດຈຸດສຸມ ການ​ສົນ​ທະ​ນາ​ໄດ້​ສຸມ​ໃສ່​: ກົນໄກ ແລະ ຂະບວນການຫຼັກ ...

1 min read Via v8.dev

Mewayz Team

Editorial Team

Hacker News

ຄຸນສົມບັດໄວໃນ V8: ການເພີ່ມປະສິດທິພາບຂອງເຄື່ອງຈັກຂອງ JavaScript ຊ່ວຍໃຫ້ແອັບພລິເຄຊັນທຸລະກິດທັນສະໄໝແນວໃດ

ຄຸນສົມບັດໄວໃນ V8 ອ້າງອີງເຖິງຍຸດທະສາດຂອງເຄື່ອງຈັກ JavaScript ສໍາລັບການເກັບຮັກສາ ແລະການເຂົ້າເຖິງຄຸນສົມບັດຂອງວັດຖຸຜ່ານຊັ້ນຮຽນທີ່ເຊື່ອງໄວ້ ແລະການເກັບຮັກສາໃນວັດຖຸ, ເຮັດໃຫ້ປະສິດທິພາບໃກ້ຄຽງກັບການຊອກຫາຊັບສິນ. ການເຂົ້າໃຈກົນໄກການເພີ່ມປະສິດທິພາບນີ້ແມ່ນຈໍາເປັນສໍາລັບທີມງານທີ່ສ້າງເວັບທີ່ມີຄວາມສໍາຄັນຕໍ່ການເຮັດວຽກ, ຈາກ dashboards SaaS ຈົນເຖິງລະບົບປະຕິບັດການທຸລະກິດເຕັມຮູບແບບເຊັ່ນ Mewayz.

ການແນະນຳ ແລະປັບປຸງໃໝ່ໃນໄລຍະຫຼາຍໆຄັ້ງ V8, ຮູບແບບຄຸນສົມບັດທີ່ໄວເປັນຕົວແທນໜຶ່ງໃນການຕັດສິນໃຈທາງສະຖາປັດຕະຍະກຳທີ່ຕາມມາທີ່ສຸດໃນການອອກແບບຊ່ວງເວລາ JavaScript ທີ່ທັນສະໄໝ. ສໍາລັບຜູ້ໃຊ້ 138,000+ ທີ່ອີງໃສ່ລະບົບທຸລະກິດ 207-ໂມດູນຂອງ Mewayz ປະຈໍາວັນ, ການເພີ່ມປະສິດທິພາບພາຍໃຕ້ການເຫຼົ່ານີ້ຈະແປໂດຍກົງເປັນເວລາໂຫຼດ snappier, ການໂຕ້ຕອບທີ່ລຽບງ່າຍ, ແລະປະສົບການທີ່ຕອບສະຫນອງຫຼາຍຂຶ້ນໃນທົ່ວທຸກຂັ້ນຕອນການເຮັດວຽກ.

ຄຸນສົມບັດໄວແມ່ນຫຍັງ ແລະເປັນຫຍັງພວກມັນຈຶ່ງສຳຄັນໃນ V8?

V8, ເຄື່ອງຈັກ JavaScript ທີ່ຢູ່ເບື້ອງຫຼັງ Google Chrome ແລະ Node.js, ຈັດປະເພດຄຸນສົມບັດຂອງວັດຖຸອອກເປັນສອງໂໝດຕົ້ນຕໍ: ຄຸນສົມບັດໄວ ແລະ ຄຸນສົມບັດວັດຈະນານຸກົມ. ຄຸນສົມບັດທີ່ໄວຈະຖືກເກັບໄວ້ໂດຍກົງໃນວັດຖຸ ຫຼືຜ່ານແຖວບ່ອນເກັບຂໍ້ມູນທີ່ຮອງຮັບໂດຍຫ້ອງຮຽນທີ່ເຊື່ອງໄວ້ (ຍັງເອີ້ນວ່າ "ແຜນທີ່" ພາຍໃນ). ວິທີນີ້ຫຼີກລ້ຽງການເບິ່ງຕາຕະລາງ hash ທີ່ໂຫມດວັດຈະນານຸກົມອີງໃສ່.

ເມື່ອ V8 ກວດພົບວ່າວັດຖຸປະຕິບັດຕາມຮູບຮ່າງທີ່ຄາດເດົາໄດ້ — ຊຶ່ງຫມາຍຄວາມວ່າຄຸນສົມບັດຖືກເພີ່ມເຂົ້າເປັນລໍາດັບທີ່ສອດຄ່ອງ — ມັນມອບໝາຍລະບົບຕ່ອງໂສ້ຊັ້ນຮຽນທີ່ເຊື່ອງໄວ້ທີ່ອະນຸຍາດໃຫ້ເຄື່ອງຈັກສາມາດຄິດໄລ່ການຊົດເຊີຍຊັບສິນໃນເວລາລວບລວມຫຼາຍກວ່າເວລາແລ່ນ. ຜົນ​ໄດ້​ຮັບ​ແມ່ນ​ການ​ເຂົ້າ​ເຖິງ​ຊັບ​ສິນ​ໄວ​ຂຶ້ນ​ຢ່າງ​ຫຼວງ​ຫຼາຍ, ບາງ​ຄັ້ງ​ກໍ​ຕາມ​ລຳ​ດັບ​ຂະ​ໜາດ​ທຽບ​ກັບ​ໂໝດ​ວັດ​ຈະ​ນາ​ນຸ​ກົມ.

ອັນນີ້ສຳຄັນເພາະວ່າເກືອບທຸກຄຳສັ່ງໃນແອັບພລິເຄຊັນ JavaScript ກ່ຽວຂ້ອງກັບການເຂົ້າເຖິງຊັບສິນ. ການສະແດງແຜງໜ້າປັດ, ການປະມວນຜົນຂໍ້ມູນແບບຟອມ, ການເຮັດຊໍ້າຄືນຜ່ານການບັນທຶກ — ການກະທຳທັງໝົດນີ້ແມ່ນຂຶ້ນກັບວ່າເຄື່ອງຈັກດຶງຄ່າຈາກວັດຖຸໄດ້ມີປະສິດທິພາບແນວໃດ.

V8 ຕັດສິນໃຈແນວໃດລະຫວ່າງການເກັບຮັກສາຊັບສິນທີ່ໄວ ແລະຊ້າ?

V8 ໃຊ້ຊຸດຂອງ heuristics ເພື່ອກໍານົດວ່າຍຸດທະສາດການເກັບຮັກສາທີ່ຈະໃຊ້. ວັດ​ຖຸ​ເລີ່ມ​ຕົ້ນ​ໃນ​ໂໝດ​ໄວ​ຕາມ​ຄ່າ​ເລີ່ມ​ຕົ້ນ, ແຕ່​ບາງ​ຮູບ​ແບບ​ສາ​ມາດ​ກະ​ຕຸ້ນ​ໃຫ້​ປ່ຽນ​ໄປ​ໃຊ້​ໂໝດ​ວັດ​ຈະ​ນາ​ນຸ​ກົມ:

  • ເພີ່ມຄຸນສົມບັດແບບໄດນາມິກຫຼາຍເກີນໄປ — ວັດຖຸທີ່ເຕີບໃຫຍ່ເກີນຂອບເຂດຂອງຄຸນສົມບັດທີ່ມີຊື່ອາດຈະຖືກປ່ຽນໄປສູ່ໂໝດວັດຈະນານຸກົມເພື່ອປະສິດທິພາບຄວາມຈຳ.
  • ການລຶບຄຸນສົມບັດ — ການໃຊ້ຕົວປະຕິບັດການ delete ໃນຄຸນສົມບັດຂອງວັດຖຸສາມາດທໍາລາຍຕ່ອງໂສ້ຊັ້ນຮຽນທີ່ເຊື່ອງໄວ້ຂອງມັນໄດ້, ບັງຄັບໃຫ້ການຫຼຸດລົງກັບຄືນໄປບ່ອນການເກັບຮັກສາຊ້າລົງ.
  • ຮູບຮ່າງຂອງວັດຖຸທີ່ບໍ່ເປັນເອກະພາບ — ການສ້າງວັດຖຸທີ່ມີ "ປະເພດ" ດຽວກັນແຕ່ການເພີ່ມຄຸນສົມບັດໃນຄໍາສັ່ງທີ່ແຕກຕ່າງກັນຈະສ້າງຊັ້ນທີ່ເຊື່ອງໄວ້ແຍກຕ່າງຫາກ, ຫຼຸດຜ່ອນໂອກາດການເພີ່ມປະສິດທິພາບ.
  • ກະແຈຄຸນສົມບັດທີ່ຄຳນວນ ຫຼືບໍ່ສາມາດຄາດເດົາໄດ້ — ຊື່ຊັບສິນທີ່ສ້າງຂຶ້ນແບບໄດນາມິກປ້ອງກັນບໍ່ໃຫ້ V8 ສ້າງການປ່ຽນຊັ້ນທີ່ເຊື່ອງໄວ້ທີ່ໝັ້ນຄົງ.
  • ຄຸນສົມບັດທີ່ຖືກດັດສະນີ (ຄືອາເຣ) — ກະແຈຄຸນສົມບັດເປັນຕົວເລກຖືກຈັດການຜ່ານລະບົບອົງປະກອບທີ່ໄວແຍກຕ່າງຫາກແທນທີ່ຈະເປັນທໍ່ຄຸນສົມບັດທີ່ມີຊື່.

ການເຂົ້າໃຈຕົວກະຕຸ້ນເຫຼົ່ານີ້ເຮັດໃຫ້ນັກພັດທະນາສາມາດຂຽນລະຫັດທີ່ຢູ່ໃນເສັ້ນທາງທີ່ໄວ, ຮັກສາຂໍ້ດີດ້ານປະສິດທິພາບທີ່ສະຖາປັດຕະຍະກຳຂອງ V8 ສະໜອງໃຫ້.

ແອັບພລິເຄຊັນໂລກທີ່ແທ້ຈິງສາມາດຮຽນຮູ້ຫຍັງໄດ້ຈາກຕົວແບບຊັບສິນຂອງ V8?

ຫຼັກ​ການ​ທີ່​ຢູ່​ເບື້ອງ​ຫຼັງ​ຄຸນ​ສົມ​ບັດ​ທີ່​ໄວ​ມີ​ຜົນ​ດີ​ເກີນ​ກວ່າ​ພາຍ​ໃນ​ຂອງ​ເຄື່ອງ​ຈັກ. ພວກມັນສະແດງເຖິງປັດຊະຍາທີ່ກວ້າງກວ່າຂອງ ຄວາມສອດຄ່ອງຂອງໂຄງສ້າງເຮັດໃຫ້ການເພີ່ມປະສິດທິພາບ — ແນວຄວາມຄິດທີ່ນຳໃຊ້ເທົ່າທຽມກັນກັບການອອກແບບໂຄງຮ່າງຖານຂໍ້ມູນ, ສະຖາປັດຕະຍະກຳ API ແລະວິສະວະກຳຂະບວນການທຸລະກິດ.

"ປະສິດທິພາບບໍ່ແມ່ນກ່ຽວກັບການເຮັດສິ່ງຕ່າງໆໃຫ້ໄວຂຶ້ນ — ມັນແມ່ນກ່ຽວກັບການຖອນເຫດຜົນຂອງສິ່ງທີ່ຊ້າລົງ. ຄຸນສົມບັດໄວຂອງ V8 ສອນໃຫ້ພວກເຮົາຮູ້ວ່າໂຄງສ້າງທີ່ຄາດເດົາໄດ້ແມ່ນພື້ນຖານຂອງຄວາມໄວ, ບໍ່ວ່າຈະຢູ່ໃນເຄື່ອງຈັກ JavaScript ຫຼືການດໍາເນີນງານທຸລະກິດທັງຫມົດ."

💡 DID YOU KNOW?

Mewayz replaces 8+ business tools in one platform

CRM · Invoicing · HR · Projects · Booking · eCommerce · POS · Analytics. Free forever plan available.

Start Free →

ທີ່ Mewayz, ປັດຊະຍານີ້ຖືກຝັງຢູ່ໃນສະຖາປັດຕະຍະກໍາເວທີຂອງພວກເຮົາ. ແຕ່ລະໂມດູນ 207 ຂອງພວກເຮົາຖືກອອກແບບອ້ອມຮອບໂຄງສ້າງຂໍ້ມູນທີ່ສອດຄ່ອງກັນ, ຄາດເດົາໄດ້ ເຊິ່ງເຮັດໃຫ້ສ່ວນເກີນທີ່ໜ້ອຍທີ່ສຸດ ເມື່ອຜູ້ໃຊ້ປ່ຽນລະຫວ່າງ CRM, ການຈັດການໂຄງການ, ໃບແຈ້ງໜີ້, HR ແລະຫຼາຍສິບຂັ້ນຕອນການເຮັດວຽກອື່ນໆ. ຄືກັນກັບ V8 ໃຫ້ລາງວັນແກ່ວັດຖຸທີ່ມີຮູບຮ່າງທີ່ໝັ້ນຄົງ, ລະບົບທຸລະກິດໃຫ້ລາງວັນແກ່ອົງກອນດ້ວຍຂະບວນການທີ່ໄດ້ມາດຕະຖານ.

ໂຄງຮ່າງການທັນສະໄໝໃຊ້ການເພີ່ມປະສິດທິພາບເຫຼົ່ານີ້ແນວໃດ?

ຜູ້ຂຽນກອບມີຕົວແບບຊັບສິນຂອງ V8 ພາຍໃນເພື່ອສ້າງຫ້ອງສະໝຸດໄວຂຶ້ນ. ສະຖາປັດຕະຍະກໍາເສັ້ນໄຍຂອງ React, ລະບົບປະຕິກິລິຍາຂອງ Vue, ແລະຜົນຜະລິດທີ່ລວບລວມຂອງ Svelte ທັງຫມົດເຮັດໃຫ້ການເລືອກໂດຍເຈດຕະນາກ່ຽວກັບຮູບຮ່າງຂອງວັດຖຸທີ່ຈະຍັງຄົງຢູ່ໃນເສັ້ນທາງໄວຂອງ V8. ການເອີ້ນຟັງຊັນ Monomorphic — ບ່ອນທີ່ຟັງຊັນໃດໜຶ່ງໄດ້ຮັບວັດຖຸທີ່ມີຊັ້ນທີ່ເຊື່ອງໄວ້ຄືກັນ — ແມ່ນການໃຊ້ຄວາມຮູ້ນີ້ໂດຍກົງ.

ສຳລັບແພລດຟອມ SaaS ຈັດການການຈັດການລັດທີ່ຊັບຊ້ອນໃນທົ່ວຫຼາຍຮ້ອຍລັກສະນະ, ນີ້ບໍ່ແມ່ນທາງວິຊາການ. ເມື່ອຜູ້ໃຊ້ໃນ Mewayz ເປີດ dashboard ໂຄງການທີ່ດຶງຂໍ້ມູນຈາກການຈັດການວຽກ, ການຕິດຕາມເວລາ, ແລະໂມດູນທາງດ້ານການເງິນໄປພ້ອມໆກັນ, ຄວາມສາມາດຂອງເຄື່ອງຈັກໃນການແກ້ໄຂການຊອກຫາຊັບສິນຢ່າງໄວວາໃນທົ່ວວັດຖຸພັນໆຈະກໍານົດວ່າ dashboard ນັ້ນໂຫຼດໃນ 200 milliseconds ຫຼືສອງວິນາທີ.

ເຄື່ອງມືກໍ່ສ້າງທັນສະໄໝ ແລະເຄື່ອງຖ່າຍທອດສັນຍານຍັງມີບົດບາດ. ໂດຍການສ້າງລະຫັດທີ່ຜະລິດວັດຖຸທີ່ມີຮູບຮ່າງທີ່ສອດຄ່ອງກັນ, ເຄື່ອງມືເຊັ່ນ: esbuild ແລະ SWC ຊ່ວຍໃຫ້ແນ່ໃຈວ່າລະຫັດແອັບພລິເຄຊັນຈະຢູ່ໃນລະບົບຊັບສິນໄວຂອງ V8 ເຖິງແມ່ນວ່າລະຫັດແຫຼ່ງຈະເຕີບໂຕໃນຄວາມສັບສົນ.

ຄຳຖາມທີ່ຖາມເລື້ອຍໆ

ຄຸນສົມບັດໄວຍັງກ່ຽວຂ້ອງຢູ່ໃນລຸ້ນປັດຈຸບັນຂອງ V8 ບໍ?

ແມ່ນ. ໃນຂະນະທີ່ V8 ໄດ້ພັດທະນາຢ່າງຫຼວງຫຼາຍນັບຕັ້ງແຕ່ 2017, ຄວາມແຕກຕ່າງຫຼັກລະຫວ່າງຄຸນສົມບັດໄວ (hidden-class-backed) ແລະຊ້າ (dictionary-mode) ຄຸນສົມບັດຍັງຄົງເປັນອົງປະກອບພື້ນຖານຂອງຍຸດທະສາດການເພີ່ມປະສິດທິພາບຂອງເຄື່ອງຈັກ. ຮຸ່ນ V8 ທີ່ທັນສະໄຫມໄດ້ປັບປຸງ heuristics ແລະ thresholds, ແຕ່ຫຼັກການສະຖາປັດຕະແມ່ນບໍ່ປ່ຽນແປງ. ການ​ຂຽນ​ລະ​ຫັດ​ທີ່​ສ້າງ​ວັດ​ຖຸ​ທີ່​ມີ​ຮູບ​ຮ່າງ​ທີ່​ຄາດ​ຄະ​ເນ​ໄດ້​ສືບ​ຕໍ່​ໃຫ້​ຜົນ​ປະ​ໂຫຍດ​ການ​ປະ​ຕິ​ບັດ​ທີ່​ວັດ​ແທກ​ໄດ້​ໃນ​ປີ 2026.

ຂ້ອຍສາມາດກວດເບິ່ງວ່າວັດຖຸຂອງຂ້ອຍໃຊ້ຄຸນສົມບັດໄວ ຫຼືວັດຈະນານຸກົມໄດ້ແນວໃດ?

Chrome DevTools ແລະ Node.js ໃຫ້ເຄື່ອງມືວິນິດໄສສຳລັບສິ່ງນີ້. ທຸງ --allow-natives-syntax ໃນ Node.js ເປີດໃຊ້ຟັງຊັນ %HasFastProperties(obj) runtime, ເຊິ່ງສົ່ງຄືນ boolean ທີ່ຊີ້ບອກເຖິງຮູບແບບການເກັບຮັກສາຊັບສິນ. ໃນການຜະລິດ, ໃຫ້ສຸມໃສ່ການຂຽນລະຫັດທີ່ຫຼີກລ້ຽງການກະຕຸ້ນທີ່ລະບຸໄວ້ຂ້າງເທິງ - ຄໍາສັ່ງຊັບສິນທີ່ສອດຄ່ອງ, ບໍ່ມີການນໍາໃຊ້ ລຶບ, ແລະຮູບແບບການກໍ່ສ້າງວັດຖຸທີ່ເປັນເອກະພາບ - ແທນທີ່ຈະກວດເບິ່ງໃນເວລາແລ່ນ.

Mewayz ປັບປຸງແພລດຟອມຂອງມັນໂດຍອີງໃສ່ V8 ພາຍໃນເຫຼົ່ານີ້ບໍ?

ຢ່າງ​ແທ້​ຈິງ. ທີມງານວິສະວະກໍາຂອງ Mewayz ອອກແບບໂຄງສ້າງຂໍ້ມູນແລະສະຖາປັດຕະຍະກໍາໂມດູນທີ່ມີພຶດຕິກໍາຂອງເຄື່ອງຈັກ JavaScript ໃນໃຈ. OS ທຸລະກິດ 207 ໂມດູນຂອງພວກເຮົາໃຫ້ບໍລິການຫຼາຍກວ່າ 138,000 ຜູ້ໃຊ້, ແລະການຮັກສາຮູບແບບການເຂົ້າເຖິງຊັບສິນທີ່ໄວໃນທົ່ວແພລດຟອມແມ່ນສ່ວນຫນຶ່ງຂອງວິທີທີ່ພວກເຮົາສະຫນອງການຕອບສະຫນອງໃນລະດັບ. ຈາກ CRM ຂອງພວກເຮົາໄປຫາເຄື່ອງມືການຈັດການສິນຄ້າຄົງຄັງຂອງພວກເຮົາ, ທຸກໆໂມດູນແມ່ນຖືກສ້າງຂຶ້ນເພື່ອຮັກສາວັດຖຸຢູ່ໃນເສັ້ນທາງທີ່ໄວຂອງ V8.

ສ້າງທຸລະກິດຂອງທ່ານໃນເວທີທີ່ອອກແບບມາເພື່ອຄວາມໄວ

ວິສະວະກຳປະສິດທິພາບບໍ່ແມ່ນພຽງແຕ່ກ່ຽວກັບລະຫັດ — ມັນແມ່ນກ່ຽວກັບການເລືອກເຄື່ອງມືທີ່ສ້າງຂຶ້ນໂດຍທີມງານທີ່ເຂົ້າໃຈປະສິດທິພາບໃນທຸກຊັ້ນ. OS ທຸລະກິດ 207 ໂມດູນຂອງ Mewayz ຖືກອອກແບບມາຕັ້ງແຕ່ພື້ນຖານສໍາລັບຄວາມໄວ, ການຂະຫຍາຍ, ແລະຄວາມຫນ້າເຊື່ອຖື, ໃຫ້ບໍລິການ 138,000+ ທຸລະກິດໃນແຜນການເລີ່ມຕົ້ນພຽງແຕ່ $19/ເດືອນ.

ເລີ່ມການທົດລອງໃຊ້ຟຣີຂອງທ່ານທີ່ app.mewayz.com ແລະປະສົບການປະສົບການທຸລະກິດທໍາອິດທີ່ມີຄວາມຮູ້ສຶກແນວໃດ.

Try Mewayz Free

All-in-one platform for CRM, invoicing, projects, HR & more. No credit card required.

Start managing your business smarter today

Join 30,000+ businesses. Free forever plan · No credit card required.

Ready to put this into practice?

Join 30,000+ businesses using Mewayz. Free forever plan — no credit card required.

Start Free Trial →

Ready to take action?

Start your free Mewayz trial today

All-in-one business platform. No credit card required.

Start Free →

14-day free trial · No credit card · Cancel anytime