เบฅเบฒเบเบฅเบฐเบญเบฝเบ”เบ‚เบญเบ‡เบเบฒเบ™เบขเบธเบ” Cloudflare เปƒเบ™เบงเบฑเบ™เบ—เบต 2 เบเปเบฅเบฐเบเบปเบ” 2019

เบฅเบฒเบเบฅเบฐเบญเบฝเบ”เบ‚เบญเบ‡เบเบฒเบ™เบขเบธเบ” Cloudflare เปƒเบ™เบงเบฑเบ™เบ—เบต 2 เบเปเบฅเบฐเบเบปเบ” 2019

เป€เบเบทเบญเบš 9 เบ›เบตเบเปˆเบญเบ™ Cloudflare เป€เบ›เบฑเบ™เบšเปเบฅเบดเบชเบฑเบ”เบ™เป‰เบญเบเป†, เปเบฅเบฐเบ‚เป‰เบญเบเบšเปเปˆเป„เบ”เป‰เป€เบฎเบฑเบ”เบงเบฝเบเปƒเบซเป‰เบกเบฑเบ™, เบ‚เป‰เบญเบเป€เบ›เบฑเบ™เบžเบฝเบ‡เบฅเบนเบเบ„เป‰เบฒเป€เบ—เบปเปˆเบฒเบ™เบฑเป‰เบ™. เป€เบ”เบทเบญเบ™เบซเบผเบฑเบ‡เบˆเบฒเบเบเบฒเบ™เป€เบ›เบตเบ”เบ•เบปเบง Cloudflare, เบ‚เป‰เบญเบเป„เบ”เป‰เบฎเบฑเบšเบเบฒเบ™เปเบˆเป‰เบ‡เป€เบ•เบทเบญเบ™เบงเปˆเบฒเป€เบงเบฑเบšเป„เบŠเบ—เปŒเบ‚เบญเบ‡เบ‚เป‰เบญเบ jgc.orgDNS เป€เบšเบดเปˆเบ‡เบ„เบทเบงเปˆเบฒเบšเปเปˆเป€เบฎเบฑเบ”เบงเบฝเบ. Cloudflare เป„เบ”เป‰เบ›เปˆเบฝเบ™เปเบ›เบ‡ Protocol Buffers, เปเบฅเบฐเบกเบต DNS เบ—เบตเปˆเปเบ•เบเบซเบฑเบ.

เบ‚เป‰เบฒเบžเบฐเป€เบˆเบปเป‰เบฒเบ—เบฑเบ™เบ—เบตเป„เบ”เป‰เบ‚เบฝเบ™เป„เบ›เบซเบฒ Matthew Prince เบ”เป‰เบงเบเบซเบปเบงเบ‚เปเป‰เบงเปˆเบฒ "DNS เบ‚เบญเบ‡เบ‚เป‰เบญเบเบขเบนเปˆเปƒเบช?" เปเบฅเบฐเบฅเบฒเบงเป„เบ”เป‰เบชเบปเปˆเบ‡เบ„เบทเบ™เบ„เปเบฒเบ•เบญเบšเบ—เบตเปˆเป€เบ•เบฑเบกเป„เบ›เบ”เป‰เบงเบเบฅเบฒเบเบฅเบฐเบญเบฝเบ”เบ”เป‰เบฒเบ™เบงเบดเบŠเบฒเบเบฒเบ™ (เบญเปˆเบฒเบ™เบˆเบปเบ”เปเบฒเบเบ—เบฑเบ‡เปเบปเบ” เบ—เบตเปˆเบ™เบตเป‰), เป€เบŠเบดเปˆเบ‡เบ‚เป‰เบฒเบžเบฐเป€เบˆเบปเป‰เบฒเบ•เบญเบšเบงเปˆเบฒ:

เบˆเบฒเบ: John Graham-Cumming
เบงเบฑเบ™เบ—เบต: 7 เบ•เบธเบฅเบฒ 2010, 9:14
Subject: Re: Where is my DNS?
เป€เบ–เบดเบ‡: Matthew Prince

เบšเบปเบ”เบฅเบฒเบเบ‡เบฒเบ™เป€เบขเบฑเบ™, เบ‚เบญเบšเปƒเบˆ. เบ‚เป‰เบญเบเบˆเบฐเป‚เบ—เบซเบฒเปเบ™เปˆเบ™เบญเบ™เบ–เป‰เบฒเบกเบตเบšเบฑเบ™เบซเบฒ. เบกเบฑเบ™เบญเบฒเบ”เบˆเบฐเป€เบ›เบฑเบ™เบกเบนเบ™เบ„เปˆเบฒเบเบฒเบ™เบ‚เบฝเบ™เบ‚เปเป‰เบ„เบงเบฒเบกเบเปˆเบฝเบงเบเบฑเบšเป€เบฅเบทเปˆเบญเบ‡เบ™เบตเป‰เป€เบกเบทเปˆเบญเบ—เปˆเบฒเบ™เป„เบ”เป‰เบฅเบงเบšเบฅเบงเบกเบ‚เปเป‰เบกเบนเบ™เบ”เป‰เบฒเบ™เบงเบดเบŠเบฒเบเบฒเบ™เบ—เบฑเบ‡เบซเบกเบปเบ”. เบ‚เป‰เบฒโ€‹เบžเบฐโ€‹เป€เบˆเบปเป‰เบฒโ€‹เบ„เบดเบ”โ€‹เบงเปˆเบฒโ€‹เบ›เบฐโ€‹เบŠเบฒโ€‹เบŠเบปเบ™โ€‹เบˆเบฐโ€‹เบกเบตโ€‹เบ„เบงเบฒเบกโ€‹เบชเบธเบโ€‹เป€เบฅเบทเปˆเบญเบ‡โ€‹เป€เบ›เบตเบ”โ€‹เปเบฅเบฐโ€‹เบŠเบทเปˆโ€‹เบชเบฑเบ”โ€‹. เป‚เบ”เบเบชเบฐเป€เบžเบฒเบฐเบ–เป‰เบฒเบ—เปˆเบฒเบ™เปเบ™เบšเบเบฒเบŸเปƒเบชเปˆเบกเบฑเบ™เป€เบžเบทเปˆเบญเบชเบฐเปเบ”เบ‡เปƒเบซเป‰เป€เบซเบฑเบ™เบงเปˆเบฒเบเบฒเบ™เบˆเบฐเบฅเบฒเบˆเบญเบ™เป€เบžเบตเปˆเบกเบ‚เบถเป‰เบ™เบ™เบฑเบšเบ•เบฑเป‰เบ‡เปเบ•เปˆเบเบฒเบ™เป€เบ›เบตเบ”เบ•เบปเบง.

เบ‚เป‰เบฒโ€‹เบžเบฐโ€‹เป€เบˆเบปเป‰เบฒโ€‹เบกเบตโ€‹เบเบฒเบ™โ€‹เบ•เบดเบ”โ€‹เบ•เบฒเบกโ€‹เบเบงเบ”โ€‹เบเบฒโ€‹เบ—เบตเปˆโ€‹เบ”เบตโ€‹เบขเบนเปˆโ€‹เปƒเบ™โ€‹เป€เบงเบฑเบšโ€‹เป„เบŠโ€‹เบ‚เบญเบ‡โ€‹เบ‚เป‰เบฒโ€‹เบžเบฐโ€‹เป€เบˆเบปเป‰เบฒโ€‹, เปเบฅเบฐโ€‹เบ‚เป‰เบฒโ€‹เบžเบฐโ€‹เป€เบˆเบปเป‰เบฒโ€‹เป„เบ”เป‰โ€‹เบฎเบฑเบš SMS เบเปˆเบฝเบงโ€‹เบเบฑเบšโ€‹เบ„เบงเบฒเบกโ€‹เบฅเบปเป‰เบกโ€‹เป€เบซเบผเบงโ€‹เบ—เบธเบโ€‹. เบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบกเบชเบฐเปเบ”เบ‡เปƒเบซเป‰เป€เบซเบฑเบ™เบงเปˆเบฒเบ„เบงเบฒเบกเบฅเบปเป‰เบกเป€เบซเบผเบงเป€เบเบตเบ”เบ‚เบถเป‰เบ™เบˆเบฒเบ 13:03:07 เบซเบฒ 14:04:12. เบเบฒเบ™เบ—เบปเบ”เบชเบญเบšเปเบกเปˆเบ™เบ”เปเบฒเป€เบ™เบตเบ™เบ—เบธเบเป†เบซเป‰เบฒเบ™เบฒเบ—เบต.

เบ‚เป‰เบญเบเปเบ™เปˆเปƒเบˆเบงเปˆเบฒเป€เบˆเบปเป‰เบฒเบˆเบฐเบ„เบดเบ”เบญเบญเบ. เป€เบˆเบปเป‰เบฒเปเบ™เปˆเปƒเบˆเบšเปเปˆเบงเปˆเบฒเป€เบˆเบปเป‰เบฒเบšเปเปˆเบ•เป‰เบญเบ‡เบเบฒเบ™เบ„เบปเบ™เบ‚เบญเบ‡เป€เบˆเบปเป‰เบฒเปƒเบ™เป€เบญเบตเบฃเบปเบš? ๐Ÿ™‚

เปเบฅเบฐเบฅเบฒเบงเบ•เบญเบšเบงเปˆเบฒ:

เบˆเบฒเบ: Matthew Prince
เบงเบฑเบ™เบ—เบต: 7 เบ•เบธเบฅเบฒ 2010, 9:57
Subject: Re: Where is my DNS?
เป€เบ–เบดเบ‡: John Graham-Cumming

เบ‚เบญเบšโ€‹เปƒเบˆ. เบžเบงเบเป€เบฎเบปเบฒเบ•เบญเบšเบชเบฐเบซเบ™เบญเบ‡เบเบฑเบšเบ—เบธเบเบ„เบปเบ™เบ—เบตเปˆเบ‚เบฝเบ™. เบ‚เป‰เบญเบ เบเบณ เบฅเบฑเบ‡เป€เบ”เบตเบ™เบ—เบฒเบ‡เป„เบ›เบซเป‰เบญเบ‡เบเบฒเบ™เบ”เบฝเบงเบ™เบตเป‰เปเบฅเบฐเบžเบงเบเป€เบฎเบปเบฒเบˆเบฐเบ‚เบฝเบ™เบšเบฒเบ‡เบชเบดเปˆเบ‡เบšเบฒเบ‡เบขเปˆเบฒเบ‡เบฅเบปเบ‡เปƒเบ™ blog เบซเบผเบท pin post เบขเปˆเบฒเบ‡เป€เบ›เบฑเบ™เบ—เบฒเบ‡เบเบฒเบ™เปƒเบ™เบเบฐเบ”เบฒเบ™เบ‚เปˆเบฒเบงเบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒ. เบ‚เป‰เบฒเบžเบฐเป€เบˆเบปเป‰เบฒเบ•เบปเบเบฅเบปเบ‡เป€เบซเบฑเบ™เบ”เบตเบขเปˆเบฒเบ‡เบชเบปเบกเบšเบนเบ™, เบ„เบงเบฒเบกเบŠเบทเปˆเบชเบฑเบ”เปเบกเปˆเบ™เบ—เบธเบเบชเบดเปˆเบ‡เบ—เบธเบเบขเปˆเบฒเบ‡.

เปƒเบ™เบ›เบฑเบ”เบˆเบธเบšเบฑเบ™ Cloudflare เป€เบ›เบฑเบ™เบšเปเบฅเบดเบชเบฑเบ”เปƒเบซเบเปˆเปเบ—เป‰เป†, เบ‚เป‰เบญเบเป€เบฎเบฑเบ”เบงเบฝเบเบชเปเบฒเบฅเบฑเบšเบกเบฑเบ™, เปเบฅเบฐเบ•เบญเบ™เบ™เบตเป‰เบ‚เป‰เบญเบเบ•เป‰เบญเบ‡เบ‚เบฝเบ™เบขเปˆเบฒเบ‡เป€เบ›เบตเบ”เป€เบœเบตเบเบเปˆเบฝเบงเบเบฑเบšเบ„เบงเบฒเบกเบœเบดเบ”เบžเบฒเบ”เบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒ, เบœเบปเบ™เบชเบฐเบ—เป‰เบญเบ™เปเบฅเบฐเบเบฒเบ™เบเบฐเบ—เปเบฒเบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒ.

เป€เบซเบ”เบเบฒเบ™ 2 เบเปเบฅเบฐเบเบปเบ”

เปƒเบ™เบงเบฑเบ™เบ—เบต 2 เป€เบ”เบทเบญเบ™เบเปเบฅเบฐเบเบปเบ”เบžเบงเบเป€เบฎเบปเบฒเป„เบ”เป‰เบญเบญเบเบเบปเบ”เบฅเบฐเบšเบฝเบšเปƒเบซเบกเปˆเปƒเบ™เบเบปเบ”เบฅเบฐเบšเบฝเบšเบเบฒเบ™เบ„เบธเป‰เบกเบ„เบญเบ‡เบชเปเบฒเบฅเบฑเบš WAFs เป€เบ™เบทเปˆเบญเบ‡เบˆเบฒเบเบชเบดเปˆเบ‡เบ—เบตเปˆ เบŠเบฑเบšเบžเบฐเบเบฒเบเบญเบ™ CPU เปเบปเบ”เปเบฅเป‰เบง เปƒเบ™เบ—เบธเบเป†เบเบฒเบ™เบ›เบฐเบกเบงเบ™เบœเบปเบ™เบซเบผเบฑเบเบ‚เบญเบ‡เป‚เบ›เป€เบŠเบ”เป€เบŠเบต HTTP/HTTPS เบเบฒเบ™เบˆเบฐเบฅเบฒเบˆเบญเบ™เปƒเบ™เป€เบ„เบทเบญเบ‚เปˆเบฒเบ Cloudflare เบ—เบปเปˆเบงเป‚เบฅเบ. เบžเบงเบเป€เบฎเบปเบฒเบ›เบฑเบšเบ›เบธเบ‡เบเบปเบ”เบฅเบฐเบšเบฝเบšเบ—เบตเปˆเบกเบตเบเบฒเบ™เบ„เบธเป‰เบกเบ„เบญเบ‡เบขเปˆเบฒเบ‡เบ•เปเปˆเป€เบ™เบทเปˆเบญเบ‡เบชเปเบฒเบฅเบฑเบš WAFs เป€เบžเบทเปˆเบญเบ•เบญเบšเบชเบฐเบซเบ™เบญเบ‡เบ•เปเปˆเบ„เบงเบฒเบกเบชเปˆเบฝเบ‡เปเบฅเบฐเป„เบžเบ‚เบปเปˆเบกเบ‚เบนเปˆเปƒเบซเบกเปˆ. เบ•เบปเบงเบขเปˆเบฒเบ‡เปƒเบ™เป€เบ”เบทเบญเบ™เบžเบถเบ”เบชเบฐเบžเบฒ, เบžเบงเบเป€เบฎเบปเบฒเบฎเบตเบšเบฎเป‰เบญเบ™ เป€เบžเบตเปˆเบกโ€‹เบเบปเบ”โ€‹เบฅเบฐโ€‹เบšเบฝเบšโ€‹เป€เบžเบทเปˆเบญเบ›เบปเบเบ›เป‰เบญเบ‡เบ„เบงเบฒเบกเบชเปˆเบฝเบ‡เบ—เบตเปˆเบฎเป‰เบฒเบเปเบฎเบ‡เปƒเบ™ SharePoint. เบˆเบธเบ”เบ—เบฑเบ‡เบซเบกเบปเบ”เบ‚เบญเบ‡ WAF เบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒเปเบกเปˆเบ™เบ„เบงเบฒเบกเบชเบฒเบกเบฒเบ”เปƒเบ™เบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰เบเบปเบ”เบฅเบฐเบšเบฝเบšเบขเปˆเบฒเบ‡เป„เบงเบงเบฒเปเบฅเบฐเบ—เบปเปˆเบงเป‚เบฅเบ.

เปเบ•เปˆเบซเบ™เป‰เบฒเป€เบชเบเบ”เบฒเบ, เบเบฒเบ™เบ›เบฑเบšเบ›เบธเบ‡เปƒเบ™เบงเบฑเบ™เบžเบฐเบซเบฑเบ”เบ—เบตเปˆเบœเปˆเบฒเบ™เบกเบฒเบ›เบฐเบเบญเบšเบ”เป‰เบงเบเบเบฒเบ™เบชเบฐเปเบ”เบ‡เบญเบญเบเบ›เบปเบเบเบฐเบ•เบดเบ—เบตเปˆเบชเบนเบ™เป€เบชเบเบŠเบฑเบšเบžเบฐเบเบฒเบเบญเบ™ CPU HTTP / HTTPS เบซเบผเบฒเบเป€เบเบตเบ™เป„เบ›เปƒเบ™เบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบกเบ„เบทเบ™. เบŸเบฑเบ‡เบŠเบฑเบ™เบžเบฃเบฑเบญเบเบŠเบตเบซเบผเบฑเบ, CDN, เปเบฅเบฐ WAF เบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒเป„เบ”เป‰เบฎเบฑเบšเบ„เบงเบฒเบกเป€เบชเบเบซเบฒเบเป€เบ›เบฑเบ™เบœเบปเบ™เป„เบ”เป‰เบฎเบฑเบš. เป€เบชเบฑเป‰เบ™เบชเบฐเปเบ”เบ‡เบชเบฐเปเบ”เบ‡เปƒเบซเป‰เป€เบซเบฑเบ™เบงเปˆเบฒเบŠเบฑเบšเบžเบฐเบเบฒเบเบญเบ™เบ‚เบญเบ‡เป‚เบ›เป€เบŠเบ”เป€เบŠเบตเบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เปƒเบซเป‰เบšเปเบฅเบดเบเบฒเบ™เบเบฒเบ™เบˆเบฐเบฅเบฒเบˆเบญเบ™ HTTP / HTTPS เบšเบฑเบ™เบฅเบธเป€เบเบทเบญเบš 100% เปƒเบ™เป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบเปƒเบ™เป€เบ„เบทเบญเบ‚เปˆเบฒเบเบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒ.

เบฅเบฒเบเบฅเบฐเบญเบฝเบ”เบ‚เบญเบ‡เบเบฒเบ™เบขเบธเบ” Cloudflare เปƒเบ™เบงเบฑเบ™เบ—เบต 2 เบเปเบฅเบฐเบเบปเบ” 2019
เบเบฒเบ™เบ™เบณเปƒเบŠเป‰ CPU เบขเบนเปˆเบˆเบธเบ”เปœเบถเปˆเบ‡เบ‚เบญเบ‡เบเบฒเบ™เบ›เบฐเบเบปเบ”เบ•เบปเบงเปƒเบ™เป€เบงเบฅเบฒเป€เบเบตเบ”เป€เบซเบ”

เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™, เบฅเบนเบเบ„เป‰เบฒเบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒ (เปเบฅเบฐเบฅเบนเบเบ„เป‰เบฒเบ‚เบญเบ‡เบฅเบนเบเบ„เป‰เบฒเบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒ) เบชเบดเป‰เบ™เบชเบธเบ”เบฅเบปเบ‡เบ”เป‰เบงเบเบซเบ™เป‰เบฒเบ„เบงเบฒเบกเบœเบดเบ”เบžเบฒเบ” 502 เปƒเบ™เป‚เบ”เป€เบกเบ™ Cloudflare. 502 เบ‚เปเป‰เบœเบดเบ”เบžเบฒเบ”เบ–เบทเบเบชเป‰เบฒเบ‡เบ‚เบทเป‰เบ™เป‚เบ”เบเป€เบŠเบตเบšเป€เบงเบตเบ—เบฒเบ‡เบซเบ™เป‰เบฒเบ‚เบญเบ‡ Cloudflare เบ—เบตเปˆเบเบฑเบ‡เบกเบตเปเบเบ™เบŸเบฃเบตเปเบ•เปˆเบšเปเปˆเบชเบฒเบกเบฒเบ”เบชเบทเปˆเบชเบฒเบ™เบเบฑเบšเบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบˆเบฑเบ”เบเบฒเบ™เบเบฑเบšเบเบฒเบ™เป€เบ‚เบปเป‰เบฒเบŠเบปเบก HTTP/HTTPS.

เบฅเบฒเบเบฅเบฐเบญเบฝเบ”เบ‚เบญเบ‡เบเบฒเบ™เบขเบธเบ” Cloudflare เปƒเบ™เบงเบฑเบ™เบ—เบต 2 เบเปเบฅเบฐเบเบปเบ” 2019

เบžเบงเบเป€เบฎเบปเบฒเบฎเบนเป‰เบงเปˆเบฒเบ„เบงเบฒเบกเบšเปเปˆเบชเบฐเบ”เบงเบเบ™เบตเป‰เป€เบฎเบฑเบ”เปƒเบซเป‰เบฅเบนเบเบ„เป‰เบฒเบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒเบซเบผเบฒเบเบ›เบฒเบ™เปƒเบ”. เบžเบงเบเป€เบฎเบปเบฒเบกเบตเบ„เบงเบฒเบกเบฅเบฐเบญเบฒเบเบซเบผเบฒเบ. เปเบฅเบฐเบ„เบงเบฒเบกเบฅเบปเป‰เบกเป€เบซเบฅเบงเบ™เบตเป‰เป„เบ”เป‰เบ‚เบฑเบ”เบ‚เบงเบฒเบ‡เบžเบงเบเป€เบฎเบปเบฒเบˆเบฒเบเบเบฒเบ™เบˆเบฑเบ”เบเบฒเบ™เบเบฑเบšเป€เบซเบ”เบเบฒเบ™เบขเปˆเบฒเบ‡เบกเบตเบ›เบฐเบชเบดเบ”เบ—เบดเบžเบฒเบš.

เบ–เป‰เบฒเบ—เปˆเบฒเบ™เป€เบ›เบฑเบ™เบซเบ™เบถเปˆเบ‡เปƒเบ™เบฅเบนเบเบ„เป‰เบฒเป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰, เบ—เปˆเบฒเบ™เบญเบฒเบ”เบˆเบฐเบขเป‰เบฒเบ™, เปƒเบˆเบฎเป‰เบฒเบเปเบฅเบฐเปƒเบˆเบฎเป‰เบฒเบ. เบเบดเปˆเบ‡เป„เบ›เบเบงเปˆเบฒเบ™เบฑเป‰เบ™, เบžเบงเบเป€เบฎเบปเบฒเบเบฑเบ‡เบšเปเปˆเบ—เบฑเบ™เบกเบต เบเบฒเบ™เบ‚เบฑเบ”เบ‚เบงเบฒเบ‡เบ—เบปเปˆเบงเป‚เบฅเบ. เบเบฒเบ™เบšเปเบฅเบดเป‚เบžเบ CPU เบชเบนเบ‡เปเบกเปˆเบ™เป€เบ™เบทเปˆเบญเบ‡เบกเบฒเบˆเบฒเบเบเบปเบ”เบฅเบฐเบšเบฝเบš WAF เบ—เบตเปˆเบกเบตเบ„เปเบฒเป€เบงเบปเป‰เบฒเบ›เบปเบเบเบฐเบ•เบดเบ—เบตเปˆเบšเปเปˆเบ”เบตเบ—เบตเปˆเป€เบฎเบฑเบ”เปƒเบซเป‰เป€เบเบตเบ”เบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบกเบซเบผเบฒเบเป€เบเบตเบ™เป„เบ›. เบ™เบตเป‰เปเบกเปˆเบ™เบเบฒเบ™เบชเบฐเปเบ”เบ‡เบญเบญเบเบ—เบตเปˆเบœเบดเบ”: (?:(?:"|'|]|}||d|(?:nan|infinity|true|false|null|undefined|symbol|math)|`|-|+)+[)]*;?((?:s|-|~|!|{}||||+)*.*(?:.*=.*)))

เปƒเบ™เบ‚เบฐเบ™เบฐเบ—เบตเปˆเบ™เบตเป‰เปเบกเปˆเบ™เบซเบ™เป‰เบฒเบชเบปเบ™เปƒเบˆเปƒเบ™เบชเบดเบ”เบ—เบดเบ‚เบญเบ‡เบ•เบปเบ™เป€เบญเบ‡ (เปเบฅเบฐเบ‚เป‰เบฒเบžเบฐเป€เบˆเบปเป‰เบฒเบˆเบฐเป€เบงเบปเป‰เบฒเบเปˆเบฝเบงเบเบฑเบšเบกเบฑเบ™เปƒเบ™เบฅเบฒเบเบฅเบฐเบญเบฝเบ”เป€เบžเบตเปˆเบกเป€เบ•เบตเบกเบ‚เป‰เบฒเบ‡เบฅเบธเปˆเบกเบ™เบตเป‰), เบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™ Cloudflare เป„เบ”เป‰เบซเบผเบธเบ”เบฅเบปเบ‡เป€เบ›เบฑเบ™เป€เบงเบฅเบฒ 27 เบ™เบฒเบ—เบตเบšเปเปˆเบžเบฝเบ‡เปเบ•เปˆเบเป‰เบญเบ™เบเบฒเบ™เบชเบฐเปเบ”เบ‡เบญเบญเบเบ—เบตเปˆเบšเปเปˆเบ”เบตเบ›เบปเบเบเบฐเบ•เบด. เบกเบฑเบ™เปƒเบŠเป‰เป€เบงเบฅเบฒเบžเบงเบเป€เบฎเบปเบฒเป„เบฅเบเบฐเบซเบ™เบถเปˆเบ‡เป€เบžเบทเปˆเบญเบญเบฐเบ—เบดเบšเบฒเบเบฅเปเบฒเบ”เบฑเบšเป€เบซเบ”เบเบฒเบ™เบ—เบตเปˆเบ™เปเบฒเป„เบ›เบชเบนเปˆเบ„เบงเบฒเบกเบฅเบปเป‰เบกเป€เบซเบฅเบง, เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™เบžเบงเบเป€เบฎเบปเบฒเบˆเบถเปˆเบ‡เบŠเป‰เบฒเบ—เบตเปˆเบˆเบฐเบ•เบญเบšเบชเบฐเบซเบ™เบญเบ‡. เปƒเบ™เบ•เบญเบ™เบ—เป‰เบฒเบเบ‚เบญเบ‡เบเบฒเบ™เบ•เบญเบš, เบ‚เป‰เบฒเบžเบฐเป€เบˆเบปเป‰เบฒเบˆเบฐเบญเบฐเบ—เบดเบšเบฒเบ backtracking เปƒเบ™เบเบฒเบ™เบชเบฐเปเบ”เบ‡เบญเบญเบเป€เบ›เบฑเบ™เบ›เบปเบเบเบฐเบ•เบดเปเบฅเบฐเบšเบญเบเบ—เปˆเบฒเบ™เบงเปˆเบฒเบˆเบฐเป€เบฎเบฑเบ”เปเบ™เบงเปƒเบ”เบเบฑเบšเบกเบฑเบ™.

ั‚ะพัะปัƒั‡ะธะปะพััŒ

เปƒเบซเป‰เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เปƒเบ™เบ„เปเบฒเบชเบฑเปˆเบ‡. เป€เบงเบฅเบฒเบ—เบฑเบ‡เปเบปเบ”เบ™เบตเป‰เปเบกเปˆเบ™เบขเบนเปˆเปƒเบ™ UTC.

เปƒเบ™เป€เบงเบฅเบฒ 13:42 เป‚เบกเบ‡เปเบฅเบ‡, เบงเบดเบชเบฐเบงเบฐเบเบญเบ™เปƒเบ™เบ—เบตเบก firewall เป„เบ”เป‰เบ›เปˆเบฝเบ™เปเบ›เบ‡เบเบปเบ”เบฅเบฐเบšเบฝเบšเบเบฒเบ™เบเบงเบ”เบžเบปเบšเป€เบฅเบฑเบเบ™เป‰เบญเบ XSS เปƒเบŠเป‰เบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบญเบฑเบ”เบ•เบฐเป‚เบ™เบกเบฑเบ”. เบ•เบฒเบกโ€‹เบ™เบฑเป‰เบ™โ€‹เปเบฅเป‰เบง, เปƒเบšโ€‹เบฎเป‰เบญเบ‡โ€‹เบ‚เปโ€‹เบเบฒเบ™โ€‹เบ›เปˆเบฝเบ™โ€‹เปเบ›เบ‡โ€‹เป„เบ”เป‰โ€‹เบ–เบทเบโ€‹เบชเป‰เบฒเบ‡โ€‹เบ‚เบถเป‰เบ™. เบžเบงเบเป€เบฎเบปเบฒเบˆเบฑเบ”เบเบฒเบ™เบ›เบตเป‰เบ”เบฑเปˆเบ‡เบเปˆเบฒเบงเบœเปˆเบฒเบ™ Jira (เบžเบฒเบšเบซเบ™เป‰เบฒเบˆเปเบ‚เป‰เบฒเบ‡เบฅเบธเปˆเบกเบ™เบตเป‰).

เบซเบผเบฑเบ‡เบˆเบฒเบ 3 เบ™เบฒเบ—เบต, เบซเบ™เป‰เบฒเบ—เปเบฒเบญเบดเบ”เบ‚เบญเบ‡ PagerDuty เบ›เบฒเบเบปเบ”, เบฅเบฒเบเบ‡เบฒเบ™เบšเบฑเบ™เบซเบฒเบเบฑเบš WAF. เบ™เบตเป‰เปเบกเปˆเบ™เบเบฒเบ™เบ—เบปเบ”เบชเบญเบšเบชเบฑเบ‡เป€เบ„เบฒเบฐเบ—เบตเปˆเบ—เบปเบ”เบชเบญเบšเบเบฒเบ™เป€เบฎเบฑเบ”เบงเบฝเบเบ‚เบญเบ‡ WAFs (เบžเบงเบเป€เบฎเบปเบฒเบกเบตเบซเบผเบฒเบเบฎเป‰เบญเบเบ„เบปเบ™) เบขเบนเปˆเบ™เบญเบ Cloudflare เป€เบžเบทเปˆเบญเบ•เบดเบ”เบ•เบฒเบกเบเบฒเบ™เป€เบฎเบฑเบ”เบงเบฝเบเบ›เบปเบเบเบฐเบ•เบด. เบ™เบตเป‰เป„เบ”เป‰เบ–เบทเบเบ›เบฐเบ•เบดเบšเบฑเบ”เบ•เบฒเบกเบ—เบฑเบ™เบ—เบตเป‚เบ”เบเบซเบ™เป‰เบฒเบ‚เบญเบ‡เบเบฒเบ™เปเบˆเป‰เบ‡เป€เบ•เบทเบญเบ™เบเปˆเบฝเบงเบเบฑเบšเบเบฒเบ™เบ—เบปเบ”เบชเบญเบšเบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™ end-to-end เบญเบทเปˆเบ™เป†เบ‚เบญเบ‡ Cloudflare เบฅเบปเป‰เบกเป€เบซเบฅเบง, เบšเบฑเบ™เบซเบฒเบเบฒเบ™เบˆเบฐเบฅเบฒเบˆเบญเบ™เบ—เบปเปˆเบงเป‚เบฅเบ, เบ„เบงเบฒเบกเบœเบดเบ”เบžเบฒเบ” 502 เบ—เบตเปˆเปเบœเปˆเบซเบผเบฒเบ, เปเบฅเบฐเบšเบปเบ”เบฅเบฒเบเบ‡เบฒเบ™เบซเบผเบฒเบเป‚เบ•เบ™เบˆเบฒเบเบˆเบธเบ”เบ—เบตเปˆเบžเบปเบšเป€เบซเบฑเบ™เบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒ (PoP) เปƒเบ™เป€เบกเบทเบญเบ‡เบ•เปˆเบฒเบ‡เป†เบ—เบปเปˆเบงเป‚เบฅเบเบ—เบตเปˆเบŠเบตเป‰เปƒเบซเป‰เป€เบซเบฑเบ™เป€เบ–เบดเบ‡เบเบฒเบ™เบ‚เบฒเบ”เปเบ„เบ™. เบ‚เบญเบ‡โ€‹เบŠเบฑเบšโ€‹เบžเบฐโ€‹เบเบฒโ€‹เบเบญเบ™ CPUโ€‹.

เบฅเบฒเบเบฅเบฐเบญเบฝเบ”เบ‚เบญเบ‡เบเบฒเบ™เบขเบธเบ” Cloudflare เปƒเบ™เบงเบฑเบ™เบ—เบต 2 เบเปเบฅเบฐเบเบปเบ” 2019

เบฅเบฒเบเบฅเบฐเบญเบฝเบ”เบ‚เบญเบ‡เบเบฒเบ™เบขเบธเบ” Cloudflare เปƒเบ™เบงเบฑเบ™เบ—เบต 2 เบเปเบฅเบฐเบเบปเบ” 2019

เบ‚เป‰เบฒเบžเบฐเป€เบˆเบปเป‰เบฒเป„เบ”เป‰เบฎเบฑเบšเบเบฒเบ™เปเบˆเป‰เบ‡เป€เบ•เบทเบญเบ™เป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰เบซเบผเบฒเบเป†เบ„เบฑเป‰เบ‡, เบญเบญเบเบˆเบฒเบเบเบญเบ‡เบ›เบฐเบŠเบธเบก, เปเบฅเบฐเบขเบนเปˆเปƒเบ™เป€เบชเบฑเป‰เบ™เบ—เบฒเบ‡เบ‚เบญเบ‡เบ‚เป‰เบญเบเป„เบ›เบซเบฒเป‚เบ•เบฐเปƒเบ™เป€เบงเบฅเบฒเบ—เบตเปˆเบซเบปเบงเบซเบ™เป‰เบฒเบžเบฐเปเบ™เบเบžเบฑเบ”เบ—เบฐเบ™เบฒเบเบฒเบ™เปเบเป‰เป„เบ‚เบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒเบเปˆเบฒเบงเบงเปˆเบฒเบžเบงเบเป€เบฎเบปเบฒเป„เบ”เป‰เบชเบนเบ™เป€เบชเบ 80% เบ‚เบญเบ‡เบเบฒเบ™เบˆเบฐเบฅเบฒเบˆเบญเบ™เบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒ. เบ‚เป‰เบฒเบžเบฐเป€เบˆเบปเป‰เบฒเป„เบ”เป‰เปเบฅเปˆเบ™เป„เบ›เบซเบฒเบงเบดเบชเบฐเบงเบฐเบเบญเบ™ SRE เบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒ, เบœเบนเป‰เบ—เบตเปˆเป€เบฎเบฑเบ”เบงเบฝเบเบขเบนเปˆเปเบฅเป‰เบงเบเปˆเบฝเบงเบเบฑเบšเบšเบฑเบ™เบซเบฒ. เบ—เบณเบญเบดเบ” เบžเบงเบเป€เบฎเบปเบฒเบ„เบดเบ”เบงเปˆเบฒเบกเบฑเบ™เป€เบ›เบฑเบ™เบเบฒเบ™เป‚เบˆเบกเบ•เบตเบ—เบตเปˆเบšเปเปˆเบฎเบนเป‰เบˆเบฑเบเบšเบฒเบ‡เบ›เบฐเป€เบžเบ”.

เบฅเบฒเบเบฅเบฐเบญเบฝเบ”เบ‚เบญเบ‡เบเบฒเบ™เบขเบธเบ” Cloudflare เปƒเบ™เบงเบฑเบ™เบ—เบต 2 เบเปเบฅเบฐเบเบปเบ” 2019

เบงเบดเบชเบฐเบงเบฐเบเบญเบ™ Cloudflare SRE เปเบกเปˆเบ™เบเบฐเปเบˆเบเบเบฐเบˆเบฒเบเป„เบ›เบ—เบปเปˆเบงเป‚เบฅเบเปเบฅเบฐเบ•เบดเบ”เบ•เบฒเบกเบชเบฐเบ–เบฒเบ™เบฐเบเบฒเบ™เบ•เบฐเบซเบผเบญเบ”เป‚เบกเบ‡. เป‚เบ”เบเบ›เบปเบเบเบฐเบ•เบด, เบเบฒเบ™เปเบˆเป‰เบ‡เป€เบ•เบทเบญเบ™เป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰เปเบˆเป‰เบ‡เป€เบ•เบทเบญเบ™เบ—เปˆเบฒเบ™เบเปˆเบฝเบงเบเบฑเบšเบšเบฑเบ™เบซเบฒเบ—เป‰เบญเบ‡เบ–เบดเปˆเบ™เบชเบฐเป€เบžเบฒเบฐเบ‚เบญเบ‡เบ‚เบญเบšเป€เบ‚เบ”เบˆเปเบฒเบเบฑเบ”, เบ–เบทเบเบ•เบดเบ”เบ•เบฒเบกเบขเบนเปˆเปƒเบ™ dashboards เบžเบฒเบเปƒเบ™, เปเบฅเบฐเบ–เบทเบเปเบเป‰เป„เบ‚เบซเบผเบฒเบเบ„เบฑเป‰เบ‡เบ•เปเปˆเบกเบทเป‰. เปเบ•เปˆเบซเบ™เป‰เบฒเปเบฅเบฐเบเบฒเบ™เปเบˆเป‰เบ‡เป€เบ•เบทเบญเบ™เป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰เบŠเบตเป‰เปƒเบซเป‰เป€เบซเบฑเบ™เบšเบฒเบ‡เบชเบดเปˆเบ‡เบšเบฒเบ‡เบขเปˆเบฒเบ‡เบ—เบตเปˆเบฎเบธเบ™เปเบฎเบ‡, เปเบฅเบฐเบงเบดเบชเบฐเบงเบฐเบเบญเบ™ SRE เบ—เบฑเบ™เบ—เบตเบ—เบฑเบ™เปƒเบ”เบ›เบฐเบเบฒเบ”เบฅเบฐเบ”เบฑเบšเบ„เบงเบฒเบกเบฎเป‰เบฒเบเปเบฎเบ‡ P0 เปเบฅเบฐเบ•เบดเบ”เบ•เปเปˆเบเบฑเบšเบœเบนเป‰เบšเปเบฅเบดเบซเบฒเบ™เปเบฅเบฐเบงเบดเบชเบฐเบงเบฐเบเบญเบ™เบฅเบฐเบšเบปเบš.

เบงเบดเบชเบฐเบงเบฐเบเบญเบ™เบฅเบญเบ™เบ”เบญเบ™เบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒเป„เบ”เป‰เบŸเบฑเบ‡เบเบฒเบ™เบšเบฑเบ™เบเบฒเบเบขเบนเปˆเปƒเบ™เบซเป‰เบญเบ‡เป‚เบ–เบ‡เปƒเบซเบเปˆเปƒเบ™เบ‚เบฐเบ™เบฐเบ™เบฑเป‰เบ™. เบเบฒเบ™เบšเบฑเบ™เบเบฒเบเบ•เป‰เบญเบ‡เบ–เบทเบเบ‚เบฑเบ”เบ‚เบงเบฒเบ‡, เบ—เบธเบเบ„เบปเบ™เป„เบ”เป‰เบกเบฒเป€เบ•เบปเป‰เบฒเป‚เบฎเบกเบเบฑเบ™เบขเบนเปˆเปƒเบ™เบซเป‰เบญเบ‡เบ›เบฐเบŠเบธเบกเปƒเบซเบเปˆ, เปเบฅเบฐเบœเบนเป‰เบŠเปˆเบฝเบงเบŠเบฒเบ™เป€เบžเบตเปˆเบกเป€เบ•เบตเบกเป„เบ”เป‰เบ–เบทเบเป€เบญเบตเป‰เบ™. เบ™เบตเป‰เบšเปเปˆเปเบกเปˆเบ™เบšเบฑเบ™เบซเบฒเบ›เบปเบเบเบฐเบ•เบดเบ—เบตเปˆ SREs เบชเบฒเบกเบฒเบ”เบˆเบฑเบ”เบเบฒเบ™เบเบฑเบšเบ•เบปเบ™เป€เบญเบ‡เป„เบ”เป‰. เบกเบฑเบ™เป€เบ›เบฑเบ™เบเบฒเบ™เบฎเบตเบšเบ”เปˆเบงเบ™เบ—เบตเปˆเบˆเบฐเบกเบตเบชเปˆเบงเบ™เบฎเปˆเบงเบกเบเบฑเบšเบœเบนเป‰เบŠเปˆเบฝเบงเบŠเบฒเบ™เบ—เบตเปˆเบ–เบทเบเบ•เป‰เบญเบ‡.

เปƒเบ™เป€เบงเบฅเบฒ 14:00 เบžเบงเบเป€เบฎเบปเบฒเบเปเบฒเบ™เบปเบ”เบงเปˆเบฒเบšเบฑเบ™เบซเบฒเปเบกเปˆเบ™เบ‚เบถเป‰เบ™เบเบฑเบš WAF เปเบฅเบฐเบšเปเปˆเบกเบตเบเบฒเบ™เป‚เบˆเบกเบ•เบต. เบ—เบตเบกเบ‡เบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เป„เบ”เป‰เบ”เบถเบ‡เบ‚เปเป‰เบกเบนเบ™ CPU เปเบฅเบฐเบกเบฑเบ™เป„เบ”เป‰เบเบฒเบเป€เบ›เบฑเบ™เบ—เบตเปˆเบŠเบฑเบ”เป€เบˆเบ™เบงเปˆเบฒ WAF เปเบกเปˆเบ™เป€เบžเบทเปˆเบญเบ•เปเบฒเบ™เบด. เบžเบฐเบ™เบฑเบเบ‡เบฒเบ™เบญเบตเบเบ„เบปเบ™เบซเบ™เบถเปˆเบ‡เบขเบทเบ™เบขเบฑเบ™เบ—เบดเบ”เบชเบฐเบ”เบตเบ™เบตเป‰เป‚เบ”เบเปƒเบŠเป‰ strace. เบ„เบปเบ™เบญเบทเปˆเบ™เป€เบซเบฑเบ™เบขเบนเปˆเปƒเบ™เบšเบฑเบ™เบ—เบถเบเบ—เบตเปˆเบกเบตเบšเบฑเบ™เบซเบฒเบเบฑเบš WAF. เปƒเบ™เป€เบงเบฅเบฒ 14:02 เป‚เบกเบ‡เปเบฅเบ‡, เบ—เบตเบกเบ‡เบฒเบ™เบ—เบฑเบ‡เบซเบกเบปเบ”เป„เบ”เป‰เบกเบฒเบซเบฒเบ‚เป‰เบญเบเป€เบกเบทเปˆเบญเบกเบฑเบ™เบ–เบทเบเบชเบฐเป€เบซเบ™เบตเปƒเบซเป‰เปƒเบŠเป‰เบเบฒเบ™เบ‚เป‰เบฒเบ—เบปเปˆเบงเป‚เบฅเบ, เบเบปเบ™เป„เบเบ—เบตเปˆเบชเป‰เบฒเบ‡เบ‚เบถเป‰เบ™เปƒเบ™ Cloudflare เบ—เบตเปˆเบ›เบดเบ”เบญเบปเบ‡เบ›เบฐเบเบญเบšเบซเบ™เบถเปˆเบ‡เปƒเบ™เบ—เบปเปˆเบงเป‚เบฅเบ.

เบงเบดเบ—เบตเบ—เบตเปˆเบžเบงเบเป€เบฎเบปเบฒเป„เบ”เป‰เบ‚เป‰เบฒเบ—เบปเปˆเบงเป‚เบฅเบเบชเปเบฒเบฅเบฑเบš WAF เปเบกเปˆเบ™เป€เบฅเบทเปˆเบญเบ‡เบ—เบตเปˆเปเบ•เบเบ•เปˆเบฒเบ‡เบเบฑเบ™. เบกเบฑเบ™เบšเปเปˆเปเบกเปˆเบ™เป€เบฅเบทเปˆเบญเบ‡เบ‡เปˆเบฒเบเบ”เบฒเบ. เบžเบงเบเป€เบฎเบปเบฒเปƒเบŠเป‰เบœเบฐเบฅเบดเบ”เบ•เบฐเบžเบฑเบ™เบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒเป€เบญเบ‡, เปเบฅเบฐเบ™เบฑเบšเบ•เบฑเป‰เบ‡เปเบ•เปˆเบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™เบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒ เบเบฒเบ™เป€เบ‚เบปเป‰เบฒเป€เบ–เบดเบ‡ เบšเปเปˆเป„เบ”เป‰เบœเบปเบ™, เบžเบงเบเป€เบฎเบปเบฒเบšเปเปˆเบชเบฒเบกเบฒเบ”เบเบงเบ”เบชเบญเบšเบ„เบงเบฒเบกเบ–เบทเบเบ•เป‰เบญเบ‡ เปเบฅเบฐเป€เบ‚เบปเป‰เบฒเบชเบนเปˆเบฅเบฐเบšเบปเบšเปเบœเบ‡เบ„เบงเบšเบ„เบธเบกเบžเบฒเบเปƒเบ™เป„เบ”เป‰ (เป€เบกเบทเปˆเบญเบ—เบธเบเบขเปˆเบฒเบ‡เบ–เบทเบเปเบเป‰เป„เบ‚, เบžเบงเบเป€เบฎเบปเบฒเป„เบ”เป‰เบฎเบฝเบ™เบฎเบนเป‰เบงเปˆเบฒเบชเบฐเบกเบฒเบŠเบดเบเบ—เบตเบกเบ‡เบฒเบ™เบšเบฒเบ‡เบ„เบปเบ™เบชเบนเบ™เป€เบชเบเบเบฒเบ™เป€เบ‚เบปเป‰เบฒเป€เบ–เบดเบ‡เป€เบ™เบทเปˆเบญเบ‡เบˆเบฒเบเบ„เบธเบ™เบชเบปเบกเบšเบฑเบ”เบ„เบงเบฒเบกเบ›เบญเบ”เป„เบžเบ—เบตเปˆเบ›เบดเบ”เบเบฒเบ™เปƒเบŠเป‰เบ‡เบฒเบ™เบ‚เปเป‰เบกเบนเบ™เบ›เบฐเบˆเปเบฒเบ•เบปเบง เบ–เป‰เบฒเปเบœเบ‡เบ„เบงเบšเบ„เบธเบกเบžเบฒเบเปƒเบ™เบšเปเปˆเป„เบ”เป‰เปƒเบŠเป‰เบชเปเบฒเบฅเบฑเบš เป€เบงโ€‹เบฅเบฒโ€‹เบ”เบปเบ™โ€‹เบ™เบฒเบ™).

เปเบฅเบฐเบžเบงเบเป€เบฎเบปเบฒเบšเปเปˆเบชเบฒเบกเบฒเบ”เป„เบ›เบซเบฒเบšเปเบฅเบดเบเบฒเบ™เบžเบฒเบเปƒเบ™เบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒเป€เบŠเบฑเปˆเบ™ Jira เบซเบผเบทเบฅเบฐเบšเบปเบšเบเบฒเบ™เบเปเปˆเบชเป‰เบฒเบ‡. เบžเบงเบโ€‹เป€เบฎเบปเบฒโ€‹เบ•เป‰เบญเบ‡โ€‹เบเบฒเบ™โ€‹เบเบปเบ™โ€‹เป„เบโ€‹เปเบเป‰โ€‹เป„เบ‚, เบ—เบตเปˆโ€‹เบžเบงเบโ€‹เป€เบฎเบปเบฒโ€‹เป„เบ”เป‰โ€‹เบ™เปเบฒโ€‹เปƒเบŠเป‰โ€‹เป€เบฅเบทเป‰เบญเบเป† (เบญเบฑเบ™โ€‹เบ™เบตเป‰โ€‹เบเบฑเบ‡โ€‹เบˆเบฐโ€‹เบ•เป‰เบญเบ‡โ€‹เป„เบ”เป‰โ€‹เบฎเบฑเบšโ€‹เบเบฒเบ™โ€‹เปเบเป‰โ€‹เป„เบ‚). เปƒเบ™เบ—เบตเปˆเบชเบธเบ”, เบงเบดเบชเบฐเบงเบฐเบเบญเบ™เบ„เบปเบ™เบซเบ™เบถเปˆเบ‡เป„เบ”เป‰เบ›เบดเบ”เบเบฒเบ™เปƒเบŠเป‰เบ‡เบฒเบ™ WAF เปƒเบ™เป€เบงเบฅเบฒ 14:07, เปเบฅเบฐเปƒเบ™เป€เบงเบฅเบฒ 14:09, เบฅเบฐเบ”เบฑเบšเบเบฒเบ™เบˆเบฐเบฅเบฒเบˆเบญเบ™เปเบฅเบฐ CPU เป„เบ”เป‰เบเบฑเบšเบ„เบทเบ™เบชเบนเปˆเบ›เบปเบเบเบฐเบ•เบดเบขเบนเปˆเบ—เบปเปˆเบงเบ—เบธเบเปเบซเปˆเบ‡. เบชเปˆเบงเบ™เบ—เบตเปˆเป€เบซเบผเบทเบญเบ‚เบญเบ‡เบเบปเบ™เป„เบเบเบฒเบ™เบ›เบปเบเบ›เป‰เบญเบ‡ Cloudflare เป€เบฎเบฑเบ”เบงเบฝเบเป€เบ›เบฑเบ™เบ›เบปเบเบเบฐเบ•เบด.

เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™, เบžเบงเบเป€เบฎเบปเบฒเบเปเบฒเบ™เบปเบ”เบเปˆเบฝเบงเบเบฑเบšเบเบฒเบ™เบŸเบทเป‰เบ™เบŸเบน WAF. เบชเบฐเบ–เบฒเบ™เบฐเบเบฒเบ™เบšเปเปˆเบ—เปเบฒเบกเบฐเบ”เบฒ, เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™เบžเบงเบเป€เบฎเบปเบฒเป„เบ”เป‰เบ”เปเบฒเป€เบ™เบตเบ™เบเบฒเบ™เบ—เบปเบ”เบชเบญเบšเบ—เบฒเบ‡เบฅเบปเบš (เบ–เบฒเบกเบ•เบปเบงเป€เบญเบ‡เบงเปˆเบฒเบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡เปเบกเปˆเบ™เบšเบฑเบ™เบซเบฒเปเบ—เป‰เป†เบšเป) เปเบฅเบฐเบเบฒเบ™เบ—เบปเบ”เบชเบญเบšเปƒเบ™เบ—เบฒเบ‡เบšเบงเบ (เปƒเบซเป‰เปเบ™เปˆเปƒเบˆเบงเปˆเบฒ rollback เป€เบฎเบฑเบ”เบงเบฝเบ) เปƒเบ™เป€เบกเบทเบญเบ‡เบซเบ™เบถเปˆเบ‡เป‚เบ”เบเปƒเบŠเป‰เบเบฒเบ™เบˆเบฐเบฅเบฒเบˆเบญเบ™เปเบเบเบ•เปˆเบฒเบ‡เบซเบฒเบ, เบเบฒเบ™เป‚เบญเบ™เบฅเบนเบเบ„เป‰เบฒเบ—เบตเปˆเบˆเปˆเบฒเบเบˆเบฒเบเบšเปˆเบญเบ™เบ™เบฑเป‰เบ™.

เปƒเบ™เป€เบงเบฅเบฒ 14:52 เบžเบงเบเป€เบฎเบปเบฒเป€เบŠเบทเปˆเบญเบงเปˆเบฒเบžเบงเบเป€เบฎเบปเบฒเป€เบ‚เบปเป‰เบฒเปƒเบˆเป€เบซเบ”เบœเบปเบ™เปเบฅเบฐเปเบเป‰เป„เบ‚, เปเบฅเบฐเป€เบ›เบตเบ”เปƒเบŠเป‰ WAF เบญเบตเบเป€เบ—เบทเปˆเบญเบซเบ™เบถเปˆเบ‡.

Cloudflare เป€เบฎเบฑเบ”เบงเบฝเบเปเบ™เบงเปƒเบ”

Cloudflare เบกเบตเบ—เบตเบกเบ‡เบฒเบ™เบงเบดเบชเบฐเบงเบฐเบเบญเบ™เบ—เบตเปˆเบญเบธเบ—เบดเบ”เบ•เบปเบ™เป€เบžเบทเปˆเบญเบเบฒเบ™เบ„เบธเป‰เบกเบ„เบญเบ‡เบเบปเบ”เบฅเบฐเบšเบฝเบšเบชเปเบฒเบฅเบฑเบš WAFs. เบžเบงเบเป€เบ‚เบปเบฒเบžเบฐเบเบฒเบเบฒเบกเบ›เบฑเบšเบ›เบธเบ‡เบญเบฑเบ”เบ•เบฒเบเบฒเบ™เบเบงเบ”เบžเบปเบš, เบซเบผเบธเบ”เบœเปˆเบญเบ™เบœเบปเบ™เบšเบงเบเบ—เบตเปˆเบšเปเปˆเบ–เบทเบเบ•เป‰เบญเบ‡, เปเบฅเบฐเบ•เบญเบšเบชเบฐเบซเบ™เบญเบ‡เบขเปˆเบฒเบ‡เป„เบงเบงเบฒเบ•เปเปˆเบเบฑเบšเป„เบžเบ‚เบปเปˆเบกเบ‚เบนเปˆเปƒเบซเบกเปˆเป€เบกเบทเปˆเบญเบžเบงเบเป€เบ‚เบปเบฒเป€เบเบตเบ”เบ‚เบทเป‰เบ™. เปƒเบ™ 60 เบกเบทเป‰เบ—เบตเปˆเบœเปˆเบฒเบ™เบกเบฒ, เบกเบต 476 เบ„เปเบฒเบฎเป‰เบญเบ‡เบ‚เปเบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡เบ—เบตเปˆเบ”เปเบฒเป€เบ™เบตเบ™เบเบฒเบ™เบชเปเบฒเบฅเบฑเบšเบเบปเบ”เบฅเบฐเบšเบฝเบšเบ—เบตเปˆเบกเบตเบเบฒเบ™เบ„เบธเป‰เบกเบ„เบญเบ‡เบชเปเบฒเบฅเบฑเบš WAF (เบชเบฐเป€เบฅเปˆเบเบซเบ™เบถเปˆเบ‡เบ„เบฑเป‰เบ‡เปƒเบ™เบ—เบธเบเป† 3 เบŠเบปเปˆเบงเป‚เบกเบ‡).

เบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡เป‚เบ”เบเบชเบฐเป€เบžเบฒเบฐเบ™เบตเป‰เบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เบ–เบทเบเบ™เปเบฒเป„เบ›เปƒเบŠเป‰เปƒเบ™เบฎเบนเบšเปเบšเบšเบเบฒเบ™เบˆเปเบฒเบฅเบญเบ‡, เบšเปˆเบญเบ™เบ—เบตเปˆเบเบฒเบ™เบˆเบฐเบฅเบฒเบˆเบญเบ™เบ‚เบญเบ‡เบฅเบนเบเบ„เป‰เบฒเบ—เบตเปˆเปเบ—เป‰เบˆเบดเบ‡เบœเปˆเบฒเบ™เบเบปเบ”เบฅเบฐเบšเบฝเบš, เปเบ•เปˆเบšเปเปˆเบกเบตเบซเบเบฑเบ‡เบ–เบทเบเบชเบฐเบเบฑเบ”. เบžเบงเบเป€เบฎเบปเบฒเปƒเบŠเป‰เป‚เบซเบกเบ”เบ™เบตเป‰เป€เบžเบทเปˆเบญเบ—เบปเบ”เบชเบญเบšเบ›เบฐเบชเบดเบ”เบ—เบดเบžเบฒเบšเบ‚เบญเบ‡เบเบปเบ”เบฅเบฐเบšเบฝเบšเปเบฅเบฐเบเบฒเบ™เบงเบฑเบ”เปเบ—เบเบญเบฑเบ”เบ•เบฒเบšเบงเบเบ—เบตเปˆเบšเปเปˆเบ–เบทเบเบ•เป‰เบญเบ‡เปเบฅเบฐเบšเปเปˆเบ–เบทเบเบ•เป‰เบญเบ‡. เปเบ•เปˆเป€เบ–เบดเบ‡เปเบกเปˆเบ™เบงเปˆเบฒเบขเบนเปˆเปƒเบ™เบฎเบนเบšเปเบšเบšเบเบฒเบ™เบˆเปเบฒเบฅเบญเบ‡, เบเบปเบ”เบฅเบฐเบšเบฝเบšเบˆเบฐเบ•เป‰เบญเบ‡เบ–เบทเบเบ›เบฐเบ•เบดเบšเบฑเบ”เบขเปˆเบฒเบ‡เปเบ—เป‰เบˆเบดเบ‡, เปเบฅเบฐเปƒเบ™เบเปเบฅเบฐเบ™เบตเบ™เบตเป‰เบเบปเบ”เบฅเบฐเบšเบฝเบšเบ›เบฐเบเบญเบšเบ”เป‰เบงเบเบเบฒเบ™เบชเบฐเปเบ”เบ‡เบญเบญเบเบ›เบปเบเบเบฐเบ•เบดเบ—เบตเปˆเบšเปเบฅเบดเป‚เบžเบเบŠเบฑเบšเบžเบฐเบเบฒเบเบญเบ™เบ‚เบญเบ‡เป‚เบ›เป€เบŠเบ”เป€เบŠเบตเบซเบผเบฒเบเป€เบเบตเบ™เป„เบ›.

เบฅเบฒเบเบฅเบฐเบญเบฝเบ”เบ‚เบญเบ‡เบเบฒเบ™เบขเบธเบ” Cloudflare เปƒเบ™เบงเบฑเบ™เบ—เบต 2 เบเปเบฅเบฐเบเบปเบ” 2019

เบ”เบฑเปˆเบ‡เบ—เบตเปˆเป€เบˆเบปเป‰เบฒเบชเบฒเบกเบฒเบ”เป€เบซเบฑเบ™เป„เบ”เป‰เบˆเบฒเบเบ„เปเบฒเบฎเป‰เบญเบ‡เบ‚เปเบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡เบ‚เป‰เบฒเบ‡เป€เบ—เบดเบ‡, เบžเบงเบเป€เบฎเบปเบฒเบกเบตเปเบœเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™, เปเบœเบ™เบเบฒเบ™ rollback, เปเบฅเบฐเบเบฒเบ™เป€เบŠเบทเปˆเบญเบกเบ•เปเปˆเบเบฑเบšเบ‚เบฑเป‰เบ™เบ•เบญเบ™เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบกเบฒเบ”เบ•เบฐเบ–เบฒเบ™เบžเบฒเบเปƒเบ™ (SOP) เบชเปเบฒเบฅเบฑเบšเบ›เบฐเป€เบžเบ”เบ™เบตเป‰. SOP เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡เบเบปเบ”เบฅเบฐเบšเบฝเบšเบญเบฐเบ™เบธเบเบฒเบ”เปƒเบซเป‰เบกเบฑเบ™เบ–เบทเบเป€เบœเบตเบเปเบœเปˆเบ—เบปเปˆเบงเป‚เบฅเบ. เบ•เบปเบงเบˆเบดเบ‡เปเบฅเป‰เบง, เบขเบนเปˆ Cloudflare, เบชเบดเปˆเบ‡เบ•เปˆเบฒเบ‡เป†เปเบกเปˆเบ™เป€เบฎเบฑเบ”เป„เบ”เป‰เปเบ•เบเบ•เปˆเบฒเบ‡เบเบฑเบ™เบขเปˆเบฒเบ‡เบชเบดเป‰เบ™เป€เบŠเบตเบ‡, เปเบฅเบฐ SOP เบเปเบฒเบ™เบปเบ”เบงเปˆเบฒเบžเบงเบเป€เบฎเบปเบฒเบ—เปเบฒเบญเบดเบ”เบชเบปเปˆเบ‡เบŠเบญเบšเปเบงเบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบ—เบปเบ”เบชเบญเบšเปเบฅเบฐเบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰เบžเบฒเบเปƒเบ™เป„เบ›เบซเบฒเบˆเบธเบ”เบžเบฒเบเปƒเบ™ (PoP) (เบ—เบตเปˆเบžเบฐเบ™เบฑเบเบ‡เบฒเบ™เบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒเปƒเบŠเป‰), เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™เปƒเบซเป‰เบเบฑเบšเบฅเบนเบเบ„เป‰เบฒเบˆเปเบฒเบ™เบงเบ™เบ™เป‰เบญเบเปƒเบ™. เบชเบฐเบ–เบฒเบ™เบ—เบตเปˆเบ—เบตเปˆเป‚เบ”เบ”เบ”เปˆเบฝเบง, เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™เปƒเบซเป‰เบเบฑเบšเบฅเบนเบเบ„เป‰เบฒเบˆเปเบฒเบ™เบงเบ™เบซเบฅเบฒเบ, เปเบฅเบฐเบžเบฝเบ‡เปเบ•เปˆเบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™เบ—เบปเปˆเบงเป‚เบฅเบ.

เบ™เบตเป‰เปเบกเปˆเบ™เบชเบดเปˆเบ‡เบ—เบตเปˆเบกเบฑเบ™เบ„เป‰เบฒเบเบ„เบท. เบžเบงเบเป€เบฎเบปเบฒเปƒเบŠเป‰ git เบžเบฒเบเปƒเบ™เบœเปˆเบฒเบ™ BitBucket. เบงเบดเบชเบฐเบงเบฐเบเบญเบ™เบ—เบตเปˆเป€เบฎเบฑเบ”เบงเบฝเบเบเปˆเบฝเบงเบเบฑเบšเบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡เบชเบปเปˆเบ‡เบฅเบฐเบซเบฑเบ”, เป€เบŠเบดเปˆเบ‡เบ›เบฐเบเบญเบšเป€เบ‚เบปเป‰เบฒเป„เบ›เปƒเบ™ TeamCity, เปเบฅเบฐเป€เบกเบทเปˆเบญเบเบฒเบ™เบเปเปˆเบชเป‰เบฒเบ‡เบœเปˆเบฒเบ™, เบœเบนเป‰เบ—เบปเบšเบ—เบงเบ™เบ–เบทเบเบกเบญเบšเบซเบกเบฒเบ. เป€เบกเบทเปˆเบญเบเบฒเบ™เบฎเป‰เบญเบ‡เบ‚เปเบเบฒเบ™เบ”เบถเบ‡เป„เบ”เป‰เบ–เบทเบเบญเบฐเบ™เบธเบกเบฑเบ”, เบฅเบฐเบซเบฑเบ”เบˆเบฐเบ–เบทเบเบฅเบงเบšเบฅเบงเบกเปเบฅเบฐเบŠเบธเบ”เบเบฒเบ™เบ—เบปเบ”เบชเบญเบšเบ–เบทเบเบ”เปเบฒเป€เบ™เบตเบ™เบเบฒเบ™ (เบญเบตเบเป€เบ—เบทเปˆเบญเบซเบ™เบถเปˆเบ‡).

เบ–เป‰เบฒเบเบฒเบ™เบเปเปˆเบชเป‰เบฒเบ‡เปเบฅเบฐเบเบฒเบ™เบ—เบปเบ”เบชเบญเบšเบชเปเบฒเป€เบฅเบฑเบ”เบชเบปเบกเบšเบนเบ™, เบเบฒเบ™เบฎเป‰เบญเบ‡เบ‚เปเบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡เปเบกเปˆเบ™เบ–เบทเบเบชเป‰เบฒเบ‡เบ‚เบถเป‰เบ™เปƒเบ™ Jira เปเบฅเบฐเบœเบนเป‰เบˆเบฑเบ”เบเบฒเบ™เบ—เบตเปˆเป€เบซเบกเบฒเบฐเบชเบปเบกเบซเบผเบทเบœเบนเป‰เบ™เปเบฒเบ•เป‰เบญเบ‡เบญเบฐเบ™เบธเบกเบฑเบ”เบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡. เบซเบผเบฑเบ‡โ€‹เบˆเบฒเบโ€‹เบเบฒเบ™โ€‹เบญเบฐโ€‹เบ™เบธโ€‹เบกเบฑเบ”โ€‹, เบเบฒเบ™โ€‹เบ™เปเบฒโ€‹เปƒเบŠเป‰โ€‹เป€เบเบตเบ”โ€‹เบ‚เบถเป‰เบ™โ€‹เปƒเบ™โ€‹เบญเบฑเบ™โ€‹เบ—เบตเปˆโ€‹เป€เบญเบตเป‰เบ™โ€‹เบงเปˆเบฒ "PoP menagerieโ€‹"โ€‹: DOGโ€‹, PIG เปเบฅเบฐ Canary (เบซเบกเบฒ, เบซเบกเบนเปเบฅเบฐ canary).

DOG PoP เปเบกเปˆเบ™ Cloudflare PoP (เบ„เบทเบเบฑเบ™เบเบฑเบšเบ—เบธเบเป†เป€เบกเบทเบญเบ‡เบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒ) เบ—เบตเปˆเบ–เบทเบเบ™เปเบฒเปƒเบŠเป‰เป‚เบ”เบเบžเบฐเบ™เบฑเบเบ‡เบฒเบ™ Cloudflare เป€เบ—เบปเปˆเบฒเบ™เบฑเป‰เบ™. PoP เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰เบžเบฒเบเปƒเบ™เบŠเปˆเบงเบเปƒเบซเป‰เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เบˆเบฑเบšเบšเบฑเบ™เบซเบฒเบเปˆเบญเบ™เบ—เบตเปˆเบเบฒเบ™เบˆเบฐเบฅเบฒเบˆเบญเบ™เบ‚เบญเบ‡เบฅเบนเบเบ„เป‰เบฒเบˆเบฐเป„เบซเบผเป€เบ‚เบปเป‰เบฒเป„เบ›เปƒเบ™เบเบฒเบ™เปเบเป‰เป„เบ‚. เบชเบดเปˆเบ‡เบ—เบตเปˆเป€เบ›เบฑเบ™เบ›เบฐเป‚เบซเบเบ”.

เบ–เป‰เบฒเบเบฒเบ™เบ—เบปเบ”เบชเบญเบš DOG เบ›เบฐเบชเบปเบšเบœเบปเบ™เบชเปเบฒเป€เบฅเบฑเบ”, เบฅเบฐเบซเบฑเบ”เบเป‰เบฒเบเป„เบ›เบขเบนเปˆเปƒเบ™เบ‚เบฑเป‰เบ™เบ•เบญเบ™ PIG (guinea pig). เบ™เบตเป‰เปเบกเปˆเบ™ Cloudflare PoP, เบšเปˆเบญเบ™เบ—เบตเปˆเบˆเปเบฒเบ™เบงเบ™เบ‚เบฐเบซเบ™เบฒเบ”เบ™เป‰เบญเบเบ‚เบญเบ‡เบเบฒเบ™เบˆเบฐเบฅเบฒเบˆเบญเบ™เบ‚เบญเบ‡เบฅเบนเบเบ„เป‰เบฒเบŸเบฃเบตเป„เบซเบผเบœเปˆเบฒเบ™เบฅเบฐเบซเบฑเบ”เปƒเบซเบกเปˆ.
เบ–เป‰เบฒเบ—เบฑเบ‡เบซเบกเบปเบ”เปเบกเปˆเบ™เบ”เบต, เบฅเบฐเบซเบฑเบ”เป€เบ‚เบปเป‰เบฒเป„เบ›เปƒเบ™ Canary. เบžเบงเบเป€เบฎเบปเบฒเบกเบตเบชเบฒเบก Canary PoPs เบขเบนเปˆเปƒเบ™เบžเบฒเบเบชเปˆเบงเบ™เบ•เปˆเบฒเบ‡เป†เบ‚เบญเบ‡เป‚เบฅเบ. เปƒเบ™เบžเบงเบเป€เบ‚เบปเบฒ, เบเบฒเบ™เบˆเบฐเบฅเบฒเบˆเบญเบ™เบ‚เบญเบ‡เบฅเบนเบเบ„เป‰เบฒเบ—เบตเปˆเบˆเปˆเบฒเบเปเบฅเบฐเบšเปเปˆเป€เบชเบเบ„เปˆเบฒเบœเปˆเบฒเบ™เบฅเบฐเบซเบฑเบ”เปƒเบซเบกเปˆ, เปเบฅเบฐเบ™เบตเป‰เปเบกเปˆเบ™เบเบฒเบ™เบเบงเบ”เบชเบญเบšเบ„เบงเบฒเบกเบœเบดเบ”เบžเบฒเบ”เบ„เบฑเป‰เบ‡เบชเบธเบ”เบ—เป‰เบฒเบ.

เบฅเบฒเบเบฅเบฐเบญเบฝเบ”เบ‚เบญเบ‡เบเบฒเบ™เบขเบธเบ” Cloudflare เปƒเบ™เบงเบฑเบ™เบ—เบต 2 เบเปเบฅเบฐเบเบปเบ” 2019
เบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบ›เปˆเบญเบเบŠเบญเบšเปเบงเบขเบนเปˆ Cloudflare

เบ–เป‰เบฒเบฅเบฐเบซเบฑเบ”เปเบกเปˆเบ™เบ”เบตเปƒเบ™ Canary, เบžเบงเบเป€เบฎเบปเบฒเบ›เปˆเบญเบเบกเบฑเบ™. เบœเปˆเบฒเบ™เบ—เบธเบเบ‚เบฑเป‰เบ™เบ•เบญเบ™ - DOG, PIG, Canary, เป‚เบฅเบเบ—เบฑเบ‡เบซเบกเบปเบ” - เปƒเบŠเป‰เป€เบงเบฅเบฒเบซเบผเบฒเบเบŠเบปเปˆเบงเป‚เบกเบ‡เบซเบผเบทเบซเบผเบฒเบเบกเบทเป‰, เบ‚เบถเป‰เบ™เบเบฑเบšเบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡เบฅเบฐเบซเบฑเบ”. เป€เบ™เบทเปˆเบญเบ‡เบˆเบฒเบเบ„เบงเบฒเบกเบซเบผเบฒเบเบซเบผเบฒเบเบ‚เบญเบ‡เป€เบ„เบทเบญเบ‚เปˆเบฒเบ เปเบฅเบฐเบฅเบนเบเบ„เป‰เบฒเบ‚เบญเบ‡ Cloudflare, เบžเบงเบเป€เบฎเบปเบฒเบ—เบปเบ”เบชเบญเบšเบฅเบฐเบซเบฑเบ”เบขเปˆเบฒเบ‡เบฅเบฐเบญเบฝเบ”เบเปˆเบญเบ™เบ—เบตเปˆเบˆเบฐเบ›เปˆเบญเบเบกเบฑเบ™เบ—เบปเปˆเบงเป‚เบฅเบเปƒเบซเป‰เบเบฑเบšเบฅเบนเบเบ„เป‰เบฒเบ—เบฑเบ‡เปเบปเบ”. เปเบ•เปˆ WAF เบšเปเปˆเป„เบ”เป‰เบ›เบฐเบ•เบดเบšเบฑเบ”เบ•เบฒเบกเบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบ™เบตเป‰เป‚เบ”เบเบชเบฐเป€เบžเบฒเบฐเป€เบžเบฒเบฐเบงเปˆเบฒเป„เบžเบ‚เบปเปˆเบกเบ‚เบนเปˆเบ•เป‰เบญเบ‡เป„เบ”เป‰เบฎเบฑเบšเบเบฒเบ™เบ•เบญเบšเบชเบฐเบซเบ™เบญเบ‡เบขเปˆเบฒเบ‡เป„เบงเบงเบฒ.

เป„เบžเบ‚เบปเปˆเบกเบ‚เบนเปˆเบ•เปเปˆ WAF
เปƒเบ™เบŠเบธเบกเบ›เบตเบกเปเปˆเป†เบกเบฒเบ™เบตเป‰, เป„เบžเบ‚เบปเปˆเบกเบ‚เบนเปˆเบ•เปเปˆเบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰เบ—เบปเปˆเบงเป„เบ›เป€เบžเบตเปˆเบกเบ‚เบถเป‰เบ™เบขเปˆเบฒเบ‡เบซเบผเบงเบ‡เบซเบผเบฒเบ. เบ™เบตเป‰เปเบกเปˆเบ™เป€เบ™เบทเปˆเบญเบ‡เบกเบฒเบˆเบฒเบเบ„เบงเบฒเบกเบžเป‰เบญเบกเบซเบผเบฒเบเบ‚เบญเบ‡เป€เบ„เบทเปˆเบญเบ‡เบกเบทเบ—เบปเบ”เบชเบญเบšเบŠเบญเบšเปเบง. เบ•เบปเบงเบขเปˆเบฒเบ‡, เบžเบงเบเป€เบฎเบปเบฒเบšเปเปˆเบ”เบปเบ™เบกเบฒเบ™เบตเป‰เป„เบ”เป‰เบ‚เบฝเบ™เบเปˆเบฝเบงเบเบฑเบš fuzzing).

เบฅเบฒเบเบฅเบฐเบญเบฝเบ”เบ‚เบญเบ‡เบเบฒเบ™เบขเบธเบ” Cloudflare เปƒเบ™เบงเบฑเบ™เบ—เบต 2 เบเปเบฅเบฐเบเบปเบ” 2019
เปเบซเบผเปˆเบ‡เบ‚เปเป‰เบกเบนเบ™: https://cvedetails.com/

เป€เบฅเบทเป‰เบญเบเป†, เบซเบผเบฑเบเบ–เบฒเบ™เบชเบฐเปเบ”เบ‡เปเบ™เบงเบ„เบงเบฒเบกเบ„เบดเบ”เบ–เบทเบเบชเป‰เบฒเบ‡เบ‚เบทเป‰เบ™เปเบฅเบฐเป€เบœเบตเบเปเบœเปˆเบ—เบฑเบ™เบ—เบตเปƒเบ™ Github เป€เบžเบทเปˆเบญเปƒเบซเป‰เบ—เบตเบกเบ‡เบฒเบ™เบ—เบตเปˆเบฎเบฑเบเบชเบฒเบ„เปเบฒเบฎเป‰เบญเบ‡เบชเบฐเบซเบกเบฑเบเบชเบฒเบกเบฒเบ”เบ—เบปเบ”เบชเบญเบšเบกเบฑเบ™เป„เบ”เป‰เป„เบงเปเบฅเบฐเบฎเบฑเบšเบ›เบฐเบเบฑเบ™เบงเปˆเบฒเบกเบฑเบ™เบกเบตเบ„เบงเบฒเบกเบซเบกเบฑเป‰เบ™เบ„เบปเบ‡เบžเบฝเบ‡เบžเป. เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™, Cloudflare เบ•เป‰เบญเบ‡เบเบฒเบ™เบ„เบงเบฒเบกเบชเบฒเบกเบฒเบ”เปƒเบ™เบเบฒเบ™เบ•เบญเบšเบชเบฐเบซเบ™เบญเบ‡เบ•เปเปˆเบเบฒเบ™เป‚เบˆเบกเบ•เบตเปƒเบซเบกเปˆเป„เบงเป€เบ—เบปเปˆเบฒเบ—เบตเปˆเบˆเบฐเป„เบงเป„เบ”เป‰เป€เบžเบทเปˆเบญเปƒเบซเป‰เบฅเบนเบเบ„เป‰เบฒเบกเบตเป‚เบญเบเบฒเบ”เปเบเป‰เป„เบ‚เบŠเบญเบšเปเบงเบ‚เบญเบ‡เบžเบงเบเป€เบ‚เบปเบฒ.

เบ•เบปเบงเบขเปˆเบฒเบ‡เบ—เบตเปˆเบ”เบตเบ‚เบญเบ‡เบเบฒเบ™เบ•เบญเบšเป‚เบ•เป‰เป„เบงเบ‚เบญเบ‡ Cloudflare เปเบกเปˆเบ™เบเบฒเบ™เบ™เบณเปƒเบŠเป‰เบเบฒเบ™เบ›เบปเบเบ›เป‰เบญเบ‡เบŠเปˆเบญเบ‡เป‚เบซเบงเปˆ SharePoint เปƒเบ™เป€เบ”เบทเบญเบ™เบžเบถเบ”เบชเบฐเบžเบฒ (เบญเปˆเบฒเบ™เบขเบนเปˆเบ—เบตเปˆเบ™เบตเป‰). เป€เบเบทเบญเบšเบ—เบฑเบ™เบ—เบตเบซเบผเบฑเบ‡เบˆเบฒเบเบเบฒเบ™เบ›เบฐเบเบฒเบ”เบ”เบฑเปˆเบ‡เบเปˆเบฒเบง, เบžเบงเบเป€เบฎเบปเบฒเบชเบฑเบ‡เป€เบเบ”เป€เบซเบฑเบ™เบ„เบงเบฒเบกเบžเบฐเบเบฒเบเบฒเบกเบ—เบตเปˆเบˆเบฐเบ‚เบธเบ”เบ„เบปเป‰เบ™เบ„เบงเบฒเบกเบญเปˆเบญเบ™เปเบญเปƒเบ™เบเบฒเบ™เบ•เบดเบ”เบ•เบฑเป‰เบ‡ SharePoint เบ‚เบญเบ‡เบฅเบนเบเบ„เป‰เบฒเบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒ. guys เบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒเปเบกเปˆเบ™เบขเปˆเบฒเบ‡เบ•เปเปˆเป€เบ™เบทเปˆเบญเบ‡เบ•เบดเบ”เบ•เบฒเบกเป„เบžเบ‚เบปเปˆเบกเบ‚เบนเปˆเปƒเบซเบกเปˆเปเบฅเบฐเบ‚เบฝเบ™เบเบปเบ”เบฅเบฐเบšเบฝเบšเป€เบžเบทเปˆเบญเบ›เบปเบเบ›เป‰เบญเบ‡เบฅเบนเบเบ„เป‰เบฒเบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒ.

เบเบปเบ”เบฅเบฐเบšเบฝเบšเบ—เบตเปˆเป€เบฎเบฑเบ”เปƒเบซเป‰เป€เบเบตเบ”เบšเบฑเบ™เบซเบฒเปƒเบ™เบงเบฑเบ™เบžเบฐเบซเบฑเบ”เปเบกเปˆเบ™เบ„เบฒเบ”เบงเปˆเบฒเบˆเบฐเบ›เป‰เบญเบ‡เบเบฑเบ™เบเบฒเบ™เบชเบฐเบ„เบดเบšเบ‚เป‰เบฒเบกเป€เบงเบฑเบšเป„เบŠเบ—เปŒ (XSS). เบเบฒเบ™โ€‹เป‚เบˆเบกโ€‹เบ•เบตโ€‹เบ”เบฑเปˆเบ‡โ€‹เบเปˆเบฒเบงโ€‹เบเบฑเบ‡โ€‹เป„เบ”เป‰โ€‹เบเบฒเบโ€‹เป€เบ›เบฑเบ™โ€‹เป€เบฅเบทเป‰เบญเบเป†โ€‹เปƒเบ™โ€‹เบŠเบธเบกโ€‹เบ›เบตโ€‹เบกเปเปˆเป†โ€‹เบกเบฒโ€‹เบ™เบตเป‰.

เบฅเบฒเบเบฅเบฐเบญเบฝเบ”เบ‚เบญเบ‡เบเบฒเบ™เบขเบธเบ” Cloudflare เปƒเบ™เบงเบฑเบ™เบ—เบต 2 เบเปเบฅเบฐเบเบปเบ” 2019
เปเบซเบผเปˆเบ‡เบ‚เปเป‰เบกเบนเบ™: https://cvedetails.com/

เบ‚เบฑเป‰เบ™เบ•เบญเบ™เบกเบฒเบ”เบ•เบฐเบ–เบฒเบ™เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡เบเบปเบ”เบฅเบฐเบšเบฝเบšเบเบฒเบ™เบ„เบธเป‰เบกเบ„เบญเบ‡เบชเปเบฒเบฅเบฑเบš WAF เปเบกเปˆเบ™เป€เบžเบทเปˆเบญเบ”เปเบฒเป€เบ™เบตเบ™เบเบฒเบ™เบ—เบปเบ”เบชเบญเบšเบเบฒเบ™เป€เบŠเบทเปˆเบญเบกเป‚เบเบ‡เบขเปˆเบฒเบ‡เบ•เปเปˆเป€เบ™เบทเปˆเบญเบ‡ (CI) เบเปˆเบญเบ™เบ—เบตเปˆเบˆเบฐเบ™เปเบฒเปƒเบŠเป‰เบ—เบปเปˆเบงเป‚เบฅเบ. เบงเบฑเบ™เบžเบฐเบซเบฑเบ”เบ—เบตเปˆเบœเปˆเบฒเบ™เบกเบฒเบžเบงเบเป€เบฎเบปเบฒเป„เบ”เป‰เป€เบฎเบฑเบ”เบชเบดเปˆเบ‡เบ™เบตเป‰เปเบฅเบฐเบญเบญเบเบเบปเบ”เบฅเบฐเบšเบฝเบš. เป€เบงเบฅเบฒ 13:31 เป‚เบกเบ‡เปเบฅเบ‡, เบงเบดเบชเบฐเบงเบฐเบเบญเบ™เป„เบ”เป‰เบเบทเปˆเบ™เบ„เปเบฒเบฎเป‰เบญเบ‡เบ‚เปเบเบฒเบ™เบ”เบถเบ‡เบ—เบตเปˆเป„เบ”เป‰เบฎเบฑเบšเบเบฒเบ™เบญเบฐเบ™เบธเบกเบฑเบ”เป‚เบ”เบเบกเบตเบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡.

เบฅเบฒเบเบฅเบฐเบญเบฝเบ”เบ‚เบญเบ‡เบเบฒเบ™เบขเบธเบ” Cloudflare เปƒเบ™เบงเบฑเบ™เบ—เบต 2 เบเปเบฅเบฐเบเบปเบ” 2019

เป€เบงเบฅเบฒ 13:37 เบ—เบตเบกเบŠเบดเบ•เบตเป‰เป€เบเบฑเบšเบเบณเบเบปเบ”, เปเบฅเปˆเบ™เบ—เบปเบ”เบชเบญเบš เปเบฅเบฐ เป€เบ”เบตเบ™เปœเป‰เบฒ. เบŠเบธเบ”เบ—เบปเบ”เบชเบญเบš WAF เบ—เบปเบ”เบชเบญเบšเบเบฒเบ™เบ—เปเบฒเบ‡เบฒเบ™เบซเบผเบฑเบเบ‚เบญเบ‡ WAF เปเบฅเบฐเบ›เบฐเบเบญเบšเบ”เป‰เบงเบเบเบฒเบ™เบ—เบปเบ”เบชเบญเบšเบซเบ™เปˆเบงเบเบ‡เบฒเบ™เบˆเปเบฒเบ™เบงเบ™เบซเบฅเบฒเบเบชเปเบฒเบฅเบฑเบšเบซเบ™เป‰เบฒเบ—เบตเปˆเปเบ•เปˆเบฅเบฐเบ„เบปเบ™. เบซเบผเบฑเบ‡เบˆเบฒเบเบเบฒเบ™เบ—เบปเบ”เบชเบญเบšเบซเบ™เปˆเบงเบ, เบžเบงเบเป€เบฎเบปเบฒเป„เบ”เป‰เบ—เบปเบ”เบชเบญเบšเบเบปเบ”เบฅเบฐเบšเบฝเบšเบชเปเบฒเบฅเบฑเบš WAF เป‚เบ”เบเปƒเบŠเป‰เบ„เปเบฒเบฎเป‰เบญเบ‡เบ‚เป HTTP เบˆเปเบฒเบ™เบงเบ™เบซเบฅเบฒเบ. เบ„เปเบฒเบฎเป‰เบญเบ‡เบ‚เป HTTP เบเบงเบ”เป€เบšเบดเปˆเบ‡เบ„เปเบฒเบฎเป‰เบญเบ‡เบ‚เปเปƒเบ”เบ—เบตเปˆเบ„เบงเบ™เบˆเบฐเบ–เบทเบเบšเบฅเบฑเบญเบเป‚เบ”เบ WAF (เป€เบžเบทเปˆเบญเบ‚เบฑเบ”เบ‚เบงเบฒเบ‡เบเบฒเบ™เป‚เบˆเบกเบ•เบต) เปเบฅเบฐเบ—เบตเปˆเบชเบฒเบกเบฒเบ”เบญเบฐเบ™เบธเบเบฒเบ”เปƒเบซเป‰เบœเปˆเบฒเบ™ (เป€เบžเบทเปˆเบญเบšเปเปˆเปƒเบซเป‰เบ‚เบฑเบ”เบ‚เบงเบฒเบ‡เบ—เบธเบเบชเบดเปˆเบ‡เบ—เบธเบเบขเปˆเบฒเบ‡เปเบฅเบฐเบซเบผเบตเบเป€เบงเบฑเป‰เบ™เบœเบปเบ™เบšเบงเบเบ—เบตเปˆเบšเปเปˆเบ–เบทเบเบ•เป‰เบญเบ‡). เปเบ•เปˆเบžเบงเบเป€เบฎเบปเบฒเบšเปเปˆเป„เบ”เป‰เบ—เบปเบ”เบชเบญเบšเบเบฒเบ™เปƒเบŠเป‰ CPU เบซเบผเบฒเบเป€เบเบตเบ™เป„เบ›, เปเบฅเบฐเบเบฒเบ™เบเบงเบ”เบชเบญเบšเบšเบฑเบ™เบ—เบถเบเบ‚เบญเบ‡เบเบฒเบ™เบเปเปˆเบชเป‰เบฒเบ‡ WAF เบ—เบตเปˆเบœเปˆเบฒเบ™เบกเบฒเบชเบฐเปเบ”เบ‡เปƒเบซเป‰เป€เบซเบฑเบ™เบงเปˆเบฒเป€เบงเบฅเบฒเบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™เบ—เบปเบ”เบชเบญเบšเบเบปเบ”เบฅเบฐเบšเบฝเบšเบšเปเปˆเป„เบ”เป‰เป€เบžเบตเปˆเบกเบ‚เบถเป‰เบ™, เปเบฅเบฐเบกเบฑเบ™เบเบฒเบเบ—เบตเปˆเบˆเบฐเบชเบปเบ‡เปƒเบชเบงเปˆเบฒเบšเปเปˆเบกเบตเบŠเบฑเบšเบžเบฐเบเบฒเบเบญเบ™เบžเบฝเบ‡เบžเป.

เบเบฒเบ™เบ—เบปเบ”เบชเบญเบšเบœเปˆเบฒเบ™เป„เบ› เปเบฅเบฐ TeamCity เป€เบฅเบตเปˆเบกเบ™เบณเปƒเบŠเป‰เบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡เป‚เบ”เบเบญเบฑเบ”เบ•เบฐเป‚เบ™เบกเบฑเบ”เปƒเบ™เป€เบงเบฅเบฒ 13:42 เป‚เบกเบ‡เปเบฅเบ‡.

เบฅเบฒเบเบฅเบฐเบญเบฝเบ”เบ‚เบญเบ‡เบเบฒเบ™เบขเบธเบ” Cloudflare เปƒเบ™เบงเบฑเบ™เบ—เบต 2 เบเปเบฅเบฐเบเบปเบ” 2019

Quicksilver

เบเบปเบ”เบฅเบฐเบšเบฝเบšเบ‚เบญเบ‡ WAF เบชเบธเบกเปƒเบชเปˆเบเบฒเบ™เปเบเป‰เป„เบ‚เป„เบžเบ‚เบปเปˆเบกเบ‚เบนเปˆเปƒเบ™เบ—เบฑเบ™เบ—เบต, เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™เบžเบงเบเป€เบฎเบปเบฒเบ™เปเบฒเปƒเบŠเป‰เบžเบงเบเบกเบฑเบ™เป‚เบ”เบเปƒเบŠเป‰เบฎเป‰เบฒเบ™เบ‚เบฒเบเบเบฐเปเบˆเบ—เบตเปˆเปเบˆเบเบขเบฒเบเบ‚เบญเบ‡ Quicksilver, เป€เบŠเบดเปˆเบ‡เปเบœเปˆเบ‚เบฐเบซเบเบฒเบเบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡เบ—เบปเปˆเบงเป‚เบฅเบเปƒเบ™เบงเบดเบ™เบฒเบ—เบต. เบฅเบนเบเบ„เป‰เบฒเบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒเบ—เบธเบเบ„เบปเบ™เปƒเบŠเป‰เป€เบ—เบเป‚เบ™เป‚เบฅเบเบตเบ™เบตเป‰เป€เบกเบทเปˆเบญเบžเบงเบเป€เบ‚เบปเบฒเบ›เปˆเบฝเบ™เบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒเปƒเบ™ dashboard เบซเบผเบทเบœเปˆเบฒเบ™ API, เปเบฅเบฐเบกเบฑเบ™เบ‚เปเบ‚เบญเบšเปƒเบˆเบเบฑเบšเบกเบฑเบ™เบ—เบตเปˆเบžเบงเบเป€เบฎเบปเบฒเบ•เบญเบšเบชเบฐเบซเบ™เบญเบ‡เบ•เปเปˆเบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡เบ”เป‰เบงเบเบ„เบงเบฒเบกเป„เบงเบ‚เบญเบ‡เบŸเป‰เบฒเบœเปˆเบฒ.

เบžเบงเบเป€เบฎเบปเบฒเบšเปเปˆเป„เบ”เป‰เป€เบงเบปเป‰เบฒเบซเบผเบฒเบเบเปˆเบฝเบงเบเบฑเบš Quicksilver. เปƒเบ™เป€เบกเบทเปˆเบญเบเปˆเบญเบ™เบžเบงเบเป€เบฎเบปเบฒเปƒเบŠเป‰ Kyoto Tycoon เปƒเบ™เบ–เบฒเบ™เบฐเบ—เบตเปˆเป€เบ›เบฑเบ™เบฎเป‰เบฒเบ™เบ‚เบฒเบเบเบฐเปเบˆเบ—เบตเปˆเปเบˆเบเบขเบฒเบเบ—เบปเปˆเบงเป‚เบฅเบ, เปเบ•เปˆเบกเบตเบšเบฑเบ™เบซเบฒเปƒเบ™เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบ‡เบฒเบ™เบเบฑเบšเบกเบฑเบ™, เปเบฅเบฐเบžเบงเบเป€เบฎเบปเบฒเบ‚เบฝเบ™เบฎเป‰เบฒเบ™เบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒเป€เบญเบ‡, เบชเบณเป€เบ™เบปเบฒเบขเบนเปˆเปƒเบ™เบซเบผเบฒเบเบเบงเปˆเบฒ 180 เป€เบกเบทเบญเบ‡. เปƒเบ™เบ›เบฑเบ”เบˆเบธเบšเบฑเบ™เบžเบงเบเป€เบฎเบปเบฒเปƒเบŠเป‰ Quicksilver เป€เบžเบทเปˆเบญเบŠเบธเบเบเบนเป‰เบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡เบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒเปƒเบซเป‰เบเบฑเบšเบฅเบนเบเบ„เป‰เบฒ, เบ›เบฑเบšเบ›เบธเบ‡เบเบปเบ”เบฅเบฐเบšเบฝเบš WAF, เปเบฅเบฐเปเบˆเบเบขเบฒเบเบฅเบฐเบซเบฑเบ” JavaScript เบ—เบตเปˆเบ‚เบฝเบ™เป‚เบ”เบเบฅเบนเบเบ„เป‰เบฒเปƒเบซเป‰เบเบฑเบš Cloudflare Workers.

เบกเบฑเบ™เปƒเบŠเป‰เป€เบงเบฅเบฒเบžเบฝเบ‡เปเบ•เปˆเบชเบญเบ‡เบชเบฒเบกเบงเบดเบ™เบฒเบ—เบตเบˆเบฒเบเบเบฒเบ™เบ„เบฅเบดเบเบ›เบธเปˆเบกเป€เบ—เบดเบ‡ dashboard เบซเบผเบทเป‚เบ—เบซเบฒ API เป€เบžเบทเปˆเบญเป€เบฎเบฑเบ”เปƒเบซเป‰เบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡เบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒเบ—เบปเปˆเบงเป‚เบฅเบ. เบฅเบนเบเบ„เป‰เบฒเบกเบฑเบเบ„เบงเบฒเบกเป„เบงเบ‚เบญเบ‡เบเบฒเบ™เบ•เบดเบ”เบ•เบฑเป‰เบ‡เบ™เบตเป‰. เปเบฅเบฐเบœเบนเป‰เป€เบฎเบฑเบ”เบงเบฝเบเป€เบฎเบฑเบ”เปƒเบซเป‰เบžเบงเบเป€เบ‚เบปเบฒเปƒเบŠเป‰เบŠเบญเบšเปเบงเบ—เบปเปˆเบงเป‚เบฅเบเป€เบเบทเบญเบšเบ—เบฑเบ™เบ—เบต. เป‚เบ”เบเบชเบฐเป€เบฅเปˆเบ, Quicksilver เบ‚เบฐเบซเบเบฒเบเบžเบฑเบ™เบ›เบฐเบกเบฒเบ™ 350 เบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡เบ•เปเปˆเบงเบดเบ™เบฒเบ—เบต.

เปเบฅเบฐ Quicksilver เปเบกเปˆเบ™เป„เบงเบซเบผเบฒเบ. เป‚เบ”เบเบชเบฐเป€เบฅเปˆเบเปเบฅเป‰เบง, เบžเบงเบเป€เบฎเบปเบฒเบšเบฑเบ™เบฅเบธเบญเบฑเบ”เบ•เบฒเบชเปˆเบงเบ™เบฎเป‰เบญเบเบ—เบต 99 เบ‚เบญเบ‡ 2,29 เบงเบดเบ™เบฒเบ—เบตเป€เบžเบทเปˆเบญเป€เบœเบตเบเปเบœเปˆเบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡เบ‚เบญเบ‡เบ„เบญเบกเบžเบดเบงเป€เบ•เบตเบ—เบธเบเปœเปˆเบงเบเปƒเบ™เบ—เบปเปˆเบงเป‚เบฅเบ. เบ„เบงเบฒเบกเป„เบงเบกเบฑเบเบˆเบฐเป€เบ›เบฑเบ™เบชเบดเปˆเบ‡เบ—เบตเปˆเบ”เบต. เบซเบผเบฑเบ‡เบˆเบฒเบเบ—เบตเปˆเบ—เบฑเบ‡เบซเบกเบปเบ”, เป€เบกเบทเปˆเบญเบ—เปˆเบฒเบ™เป€เบ›เบตเบ”เปƒเบŠเป‰เบŸเบฑเบ‡เบŠเบฑเบ™เบซเบผเบทเบฅเป‰เบฒเบ‡เปเบ„เบ”, เบกเบฑเบ™เบˆเบฐเป€เบเบตเบ”เบ‚เบทเป‰เบ™เป€เบเบทเบญเบšเบ—เบฑเบ™เบ—เบตเปเบฅเบฐเบขเบนเปˆเบ—เบปเปˆเบงเบ—เบธเบเปเบซเปˆเบ‡. เบเบฒเบ™เบชเบปเปˆเบ‡เบฅเบฐเบซเบฑเบ”เบœเปˆเบฒเบ™ Cloudflare Workers เป€เบเบตเบ”เบ‚เบถเป‰เบ™เปƒเบ™เบ„เบงเบฒเบกเป„เบงเบ”เบฝเบงเบเบฑเบ™. Cloudflare เบชเบฑเบ™เบเบฒเบฅเบนเบเบ„เป‰เบฒเบ‚เบญเบ‡เบ•เบปเบ™เปƒเบซเป‰เบ›เบฑเบšเบ›เบธเบ‡เป„เบงเปƒเบ™เป€เบงเบฅเบฒเบ—เบตเปˆเป€เบซเบกเบฒเบฐเบชเบปเบก.

เปเบ•เปˆเปƒเบ™เบเปเบฅเบฐเบ™เบตเบ™เบตเป‰, เบ„เบงเบฒเบกเป„เบงเปเบกเปˆเบ™เป€เบ›เบฑเบ™เป€เบฅเบทเปˆเบญเบ‡เบ•เบฐเบซเบฅเบปเบเบ—เบตเปˆเป‚เบซเบ”เบฎเป‰เบฒเบเบ•เปเปˆเบžเบงเบเป€เบฎเบปเบฒ, เปเบฅเบฐเบเบปเบ”เบฅเบฐเบšเบฝเบšเป„เบ”เป‰เบ›เปˆเบฝเบ™เปเบ›เบ‡เบขเบนเปˆเบ—เบปเปˆเบงเบ—เบธเบเปเบซเปˆเบ‡เปƒเบ™เบชเบญเบ‡เบชเบฒเบกเบงเบดเบ™เบฒเบ—เบต. เบ—เปˆเบฒเบ™เบญเบฒเบ”เบˆเบฐเบชเบฑเบ‡เป€เบเบ”เป€เบซเบฑเบ™เบงเปˆเบฒเบฅเบฐเบซเบฑเบ” WAF เปƒเบŠเป‰ Lua. Cloudflare เปƒเบŠเป‰ Lua เบขเปˆเบฒเบ‡เบเบงเป‰เบฒเบ‡เบ‚เบงเบฒเบ‡เปƒเบ™เบเบฒเบ™เบœเบฐเบฅเบดเบ”เปเบฅเบฐเบฅเบฒเบเบฅเบฐเบญเบฝเบ” Lua เปƒเบ™ WAF ะผั‹ เบชเบปเบ™เบ—เบฐเบ™เบฒเปเบฅเป‰เบง. Lua WAF เปƒเบŠเป‰ ERCP เบžเบฒเบเปƒเบ™เปเบฅเบฐเบ™เปเบฒเปƒเบŠเป‰ backtracking เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบˆเบฑเบšเบ„เบนเปˆ. เบกเบฑเบ™เบšเปเปˆเบกเบตเบเบปเบ™เป„เบเป€เบžเบทเปˆเบญเบ›เป‰เบญเบ‡เบเบฑเบ™เบเบฒเบ™เบชเบฐเปเบ”เบ‡เบญเบญเบเบ—เบตเปˆเบญเบญเบเบˆเบฒเบเบเบฒเบ™เบ„เบงเบšเบ„เบธเบก. เบ‚เป‰เบฒเบ‡เบฅเบธเปˆเบกเบ™เบตเป‰เบ‚เป‰เบฒเบžเบฐเป€เบˆเบปเป‰เบฒเบˆเบฐเบชเบปเบ™เบ—เบฐเบ™เบฒเป€เบžเบตเปˆเบกเป€เบ•เบตเบกเบเปˆเบฝเบงเบเบฑเบšเป€เบฅเบทเปˆเบญเบ‡เบ™เบตเป‰เปเบฅเบฐเบชเบดเปˆเบ‡เบ—เบตเปˆเบžเบงเบเป€เบฎเบปเบฒเบเปเบฒเบฅเบฑเบ‡เป€เบฎเบฑเบ”เบเปˆเบฝเบงเบเบฑเบšเบกเบฑเบ™.

เบฅเบฒเบเบฅเบฐเบญเบฝเบ”เบ‚เบญเบ‡เบเบฒเบ™เบขเบธเบ” Cloudflare เปƒเบ™เบงเบฑเบ™เบ—เบต 2 เบเปเบฅเบฐเบเบปเบ” 2019

เบเปˆเบญเบ™เบ—เบตเปˆเบเบปเบ”เบฅเบฐเบšเบฝเบšเบˆเบฐเบ–เบทเบเบ™เปเบฒเป„เบ›เปƒเบŠเป‰, เบ—เบธเบเบชเบดเปˆเบ‡เบ—เบธเบเบขเปˆเบฒเบ‡เป„เบ”เป‰เบ”เปเบฒเป€เบ™เบตเบ™เป„เบ›เบขเปˆเบฒเบ‡เบฅเบฝเบšเบ‡เปˆเบฒเบ: เบเบฒเบ™เบฎเป‰เบญเบ‡เบ‚เปเบเบฒเบ™เบ”เบถเบ‡เป„เบ”เป‰เบ–เบทเบเบชเป‰เบฒเบ‡เบ‚เบทเป‰เบ™เปเบฅเบฐเบญเบฐเบ™เบธเบกเบฑเบ”, เบ—เปเปˆ CI / CD เป„เบ”เป‰เป€เบเบฑเบšเบเปเบฒเปเบฅเบฐเบ—เบปเบ”เบชเบญเบšเบฅเบฐเบซเบฑเบ”, เบเบฒเบ™เบฎเป‰เบญเบ‡เบ‚เปเบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡เป„เบ”เป‰เบ–เบทเบเบชเบปเปˆเบ‡เบ•เบฒเบก SOP เบ—เบตเปˆเบ„เบงเบšเบ„เบธเบกเบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เปเบฅเบฐ rollback, เปเบฅเบฐเบเบฒเบ™เบ•เบดเบ”เบ•เบฑเป‰เบ‡เป„เบ”เป‰เบ–เบทเบเบชเปเบฒเป€เบฅเบฑเบ”.

เบฅเบฒเบเบฅเบฐเบญเบฝเบ”เบ‚เบญเบ‡เบเบฒเบ™เบขเบธเบ” Cloudflare เปƒเบ™เบงเบฑเบ™เบ—เบต 2 เบเปเบฅเบฐเบเบปเบ” 2019
เบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบ™เบณเปƒเบŠเป‰ Cloudflare WAF

เบกเบตเบšเบฒเบ‡เบขเปˆเบฒเบ‡เบœเบดเบ”เบžเบฒเบ”
เบ”เบฑเปˆเบ‡เบ—เบตเปˆเบ‚เป‰เบฒเบžเบฐเป€เบˆเบปเป‰เบฒเป€เบงเบปเป‰เบฒ, เบžเบงเบเป€เบฎเบปเบฒเบ›เบฐเบ•เบดเบšเบฑเบ”เบเบปเบ”เบฅเบฐเบšเบฝเบš WAF เปƒเบซเบกเปˆเบซเบผเบฒเบเบชเบดเบšเบ‚เปเป‰เปƒเบ™เบ—เบธเบเป†เบญเบฒเบ—เบดเบ”, เปเบฅเบฐเบžเบงเบเป€เบฎเบปเบฒเบกเบตเบฅเบฐเบšเบปเบšเบซเบผเบฒเบเบขเปˆเบฒเบ‡เป€เบžเบทเปˆเบญเบ›เป‰เบญเบ‡เบเบฑเบ™เบœเบปเบ™เบชเบฐเบ—เป‰เบญเบ™เบ—เบฒเบ‡เบฅเบปเบšเบ‚เบญเบ‡เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบ”เบฑเปˆเบ‡เบเปˆเบฒเบง. เปเบฅเบฐเปƒเบ™เป€เบงเบฅเบฒเบ—เบตเปˆเบšเบฒเบ‡เบชเบดเปˆเบ‡เบšเบฒเบ‡เบขเปˆเบฒเบ‡เบœเบดเบ”เบžเบฒเบ”, เบกเบฑเบ™เบ›เบปเบเบเบฐเบ•เบดเปเบฅเป‰เบงเปเบกเปˆเบ™เบ›เบฐเบชเบปเบกเบ›เบฐเบชเบฒเบ™เบ‚เบญเบ‡เบชเบฐเบ–เบฒเบ™เบฐเบเบฒเบ™เบซเบผเบฒเบเบ„เบฑเป‰เบ‡. เบ–เป‰เบฒเบ—เปˆเบฒเบ™เบŠเบญเบเบซเบฒเป€เบซเบ”เบœเบปเบ™เบ”เบฝเบง, เปเบ™เปˆเบ™เบญเบ™, เบ™เบตเป‰เปเบกเปˆเบ™เบเบฒเบ™เบฎเบฑเบšเบ›เบฐเบเบฑเบ™, เปเบ•เปˆเบกเบฑเบ™เบšเปเปˆเปเบกเปˆเบ™เบ„เบงเบฒเบกเบˆเบดเบ‡เบชเบฐเป€เบซเบกเบต. เป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰เปเบกเปˆเบ™เป€เบซเบ”เบœเบปเบ™เบฎเปˆเบงเบกเบเบฑเบ™เบ™เปเบฒเป„เบ›เบชเบนเปˆเบ„เบงเบฒเบกเบฅเบปเป‰เบกเป€เบซเบผเบงเบ‚เบญเบ‡เบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™ HTTP / HTTPS เบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒ.

  1. เบงเบดเบชเบฐเบงเบฐเบเบญเบ™เบ‚เบฝเบ™เบเบฒเบ™เบชเบฐเปเบ”เบ‡เบญเบญเบเป€เบ›เบฑเบ™เบ›เบปเบเบเบฐเบ•เบดเบ—เบตเปˆเบญเบฒเบ”เบˆเบฐเป€เบฎเบฑเบ”เปƒเบซเป‰เบซเบผเบฒเบเป€เบเบตเบ™เป„เบ› เบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบกเบ„เบทเบ™.
  2. เบ„เบธเบ™เบชเบปเบกเบšเบฑเบ”เบ—เบตเปˆเบชเบฒเบกเบฒเบ”เบ›เป‰เบญเบ‡เบเบฑเบ™เบเบฒเบ™เบชเบฐเปเบ”เบ‡เบญเบญเบเบ›เบปเบเบเบฐเบ•เบดเบˆเบฒเบเบเบฒเบ™เป€เบชเบ CPU เบซเบผเบฒเบเป€เบเบตเบ™เป„เบ›เป„เบ”เป‰เบ–เบทเบเป‚เบเบเบเป‰เบฒเบเบญเบญเบเบขเปˆเบฒเบ‡เบœเบดเบ”เบžเบฒเบ”เปƒเบ™เบเบฒเบ™ refactoring เบ‚เบญเบ‡ WAF เบซเบผเบฒเบเบญเบฒเบ—เบดเบ”เบเปˆเบญเบ™เบซเบ™เป‰เบฒเบ™เบตเป‰ - เบเบฒเบ™ refactoring เปเบกเปˆเบ™เบˆเปเบฒเป€เบ›เบฑเบ™เป€เบžเบทเปˆเบญเป€เบฎเบฑเบ”เปƒเบซเป‰ WAF เปƒเบŠเป‰เบŠเบฑเบšเบžเบฐเบเบฒเบเบญเบ™เบซเบ™เป‰เบญเบ.
  3. เป€เบ„เบทเปˆเบญเบ‡เบˆเบฑเบเบเบฒเบ™เบชเบฐเปเบ”เบ‡เบญเบญเบเบ›เบปเบเบเบฐเบ•เบดเบšเปเปˆเบกเบตเบเบฒเบ™เบฎเบฑเบšเบ›เบฐเบเบฑเบ™เบ„เบงเบฒเบกเบชเบฑเบšเบชเบปเบ™.
  4. เบŠเบธเบ”เบ—เบปเบ”เบชเบญเบšเบšเปเปˆเบชเบฒเบกเบฒเบ”เบเบงเบ”เบžเบปเบšเบเบฒเบ™เบšเปเบฅเบดเป‚เบžเบ CPU เบซเบผเบฒเบเป€เบเบตเบ™เป„เบ›.
  5. SOP เบญเบฐเบ™เบธเบเบฒเบ”เปƒเบซเป‰เบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡เบเบปเบ”เบฅเบฐเบšเบฝเบšเบšเปเปˆเบชเบธเบเป€เบชเบตเบ™เบ–เบทเบเป€เบœเบตเบเปเบœเปˆเบ—เบปเปˆเบงเป‚เบฅเบเป‚เบ”เบเบšเปเปˆเบกเบตเบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบซเบผเบฒเบเบ‚เบฑเป‰เบ™เบ•เบญเบ™.
  6. เปเบœเบ™เบเบฒเบ™ rollback เบฎเบฝเบเบฎเป‰เบญเบ‡เปƒเบซเป‰เบ”เปเบฒเป€เบ™เบตเบ™เบเบฒเบ™เบชเป‰เบฒเบ‡ WAF เป€เบ•เบฑเบกเบชเบญเบ‡เบ„เบฑเป‰เบ‡, เป€เบŠเบดเปˆเบ‡เปƒเบŠเป‰เป€เบงเบฅเบฒเบ”เบปเบ™.
  7. เบเบฒเบ™เปเบˆเป‰เบ‡เป€เบ•เบทเบญเบ™เบ—เบณเบญเบดเบ”เบเปˆเบฝเบงเบเบฑเบšเบšเบฑเบ™เบซเบฒเบเบฒเบ™เบชเบฑเบ™เบˆเบญเบ™เบ—เบปเปˆเบงเป‚เบฅเบเป„เบ”เป‰เบ–เบทเบเบเบฐเบ•เบธเป‰เบ™เปƒเบซเป‰เบŠเป‰เบฒเป€เบเบตเบ™เป„เบ›.
  8. เบžเบงเบเป€เบฎเบปเบฒเปƒเบŠเป‰เป€เบงเบฅเบฒเป„เบฅเบเบฐเปœเบถเปˆเบ‡เป€เบžเบทเปˆเบญเบญเบฑเบšเป€เบ”เบ”เปœเป‰เบฒเบชเบฐเบ–เบฒเบ™เบฐ.
  9. เบžเบงเบโ€‹เป€เบฎเบปเบฒโ€‹เบกเบตโ€‹เบšเบฑเบ™โ€‹เบซเบฒโ€‹เปƒเบ™โ€‹เบเบฒเบ™โ€‹เป€เบ‚เบปเป‰เบฒโ€‹เป€เบ–เบดเบ‡โ€‹เบฅเบฐโ€‹เบšเบปเบšโ€‹เป€เบ™เบทเปˆเบญเบ‡โ€‹เบˆเบฒเบโ€‹เบ„เบงเบฒเบกโ€‹เบœเบดเบ”โ€‹เบžเบฒเบ”โ€‹, เปเบฅเบฐโ€‹เบ‚เบฑเป‰เบ™โ€‹เบ•เบญเบ™โ€‹เบเบฒเบ™ bypass เบšเปเปˆโ€‹เป„เบ”เป‰โ€‹เบชเป‰เบฒเบ‡โ€‹เบ•เบฑเป‰เบ‡โ€‹เบ‚เบถเป‰เบ™โ€‹เป„เบ”เป‰โ€‹เบ”เบตโ€‹.
  10. เบงเบดเบชเบฐเบงเบฐเบเบญเบ™ SRE เบชเบนเบ™เป€เบชเบเบเบฒเบ™เป€เบ‚เบปเป‰เบฒเป€เบ–เบดเบ‡เบšเบฒเบ‡เบฅเบฐเบšเบปเบšเป€เบžเบฒเบฐเบงเปˆเบฒเบ‚เปเป‰เบกเบนเบ™เบ›เบฐเบˆเปเบฒเบ•เบปเบงเบ‚เบญเบ‡เบžเบงเบเป€เบ‚เบปเบฒเบซเบกเบปเบ”เบญเบฒเบเบธเบเป‰เบญเบ™เป€เบซเบ”เบœเบปเบ™เบ”เป‰เบฒเบ™เบ„เบงเบฒเบกเบ›เบญเบ”เป„เบž.
  11. เบฅเบนเบเบ„เป‰เบฒเบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒเบšเปเปˆเบกเบตเบเบฒเบ™เป€เบ‚เบปเป‰เบฒเป€เบ–เบดเบ‡ dashboard Cloudflare เบซเบผเบท API เป€เบžเบฒเบฐเบงเปˆเบฒเบžเบงเบเป€เบ‚เบปเบฒเบœเปˆเบฒเบ™เบžเบฒเบเบžเบทเป‰เบ™ Cloudflare.

เบชเบดเปˆเบ‡เบ—เบตเปˆเบกเบตเบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡เบ™เบฑเบšเบ•เบฑเป‰เบ‡เปเบ•เปˆเบงเบฑเบ™เบžเบฐเบซเบฑเบ”เบ—เบตเปˆเบœเปˆเบฒเบ™เบกเบฒ

เบ—เปเบฒเบญเบดเบ”, เบžเบงเบเป€เบฎเบปเบฒเบขเบธเบ”เป€เบŠเบปเบฒเบเบฒเบ™เป€เบฎเบฑเบ”เบงเบฝเบเบ—เบฑเบ‡เบซเบกเบปเบ”เบเปˆเบฝเบงเบเบฑเบšเบเบฒเบ™เบ›เปˆเบญเบเบชเปเบฒเบฅเบฑเบš WAF เปเบฅเบฐเบเปเบฒเบฅเบฑเบ‡เป€เบฎเบฑเบ”เบ”เบฑเปˆเบ‡เบ•เปเปˆเป„เบ›เบ™เบตเป‰:

  1. เบžเบงเบเป€เบฎเบปเบฒเบเบณเบฅเบฑเบ‡เปเบ™เบฐเบ™เบณเบเบฒเบ™เบ›เป‰เบญเบ‡เบเบฑเบ™เบเบฒเบ™เปƒเบŠเป‰ CPU เป€เบเบตเบ™เบ‚เบญเบšเป€เบ‚เบ”เบ—เบตเปˆเบžเบงเบเป€เบฎเบปเบฒเป€เบญเบปเบฒเบญเบญเบ. (เบžเป‰เบญเบก)
  2. เบ„เบนเปˆเบกเบทเบเบฒเบ™เบเบงเบ”เบชเบญเบšเบ—เบฑเบ‡เบซเบกเบปเบ” 3868 เบเบปเบ”เบฅเบฐเบšเบฝเบšเปƒเบ™เบเบปเบ”เบฅเบฐเบšเบฝเบšเบ—เบตเปˆเบ„เบธเป‰เบกเบ„เบญเบ‡เบชเปเบฒเบฅเบฑเบš WAF เป€เบžเบทเปˆเบญเบŠเบญเบเบซเบฒเปเบฅเบฐเปเบเป‰เป„เบ‚เบเปเบฅเบฐเบ™เบตเบญเบทเปˆเบ™เป†เบ—เบตเปˆเป€เบ›เบฑเบ™เป„เบ›เป„เบ”เป‰เบ‚เบญเบ‡ backtracking เบซเบผเบฒเบเป€เบเบตเบ™เป„เบ›. (เบเบฒเบ™โ€‹เบเบงเบ”โ€‹เบชเบญเบšโ€‹เบชเปเบฒโ€‹เป€เบฅเบฑเบ”โ€‹)
  3. เบžเบงเบเป€เบฎเบปเบฒเบฅเบงเบกเป€เบญเบปเบฒเป‚เบ›เบฃเป„เบŸเบฅเปŒเบ›เบฐเบชเบดเบ”เบ—เบดเบžเบฒเบšเบชเปเบฒเบฅเบฑเบšเบเบปเบ”เบฅเบฐเบšเบฝเบšเบ—เบฑเบ‡เบซเบกเบปเบ”เปƒเบ™เบŠเบธเบ”เบ—เบปเบ”เบชเบญเบš. (เบ„เบฒเบ”เบเบฒเบ™: 19 เบเปเบฅเบฐเบเบปเบ”)
  4. เบ›เปˆเบฝเบ™เป€เบ›เบฑเบ™เป€เบ„เบทเปˆเบญเบ‡เบˆเบฑเบเปƒเบ™เบเบฒเบ™เบชเบฐเปเบ”เบ‡เบญเบญเบเบ›เบปเบเบเบฐเบ•เบด re2 เบซเบผเบท rust - เบ—เบฑเบ‡เบชเบญเบ‡เบชเบฐเบซเบ™เบญเบ‡เบเบฒเบ™เบฎเบฑเบšเบ›เบฐเบเบฑเบ™ runtime. (เบ„เบฒเบ”เบเบฒเบ™: เบงเบฑเบ™เบ—เบต 31 เบเปเบฅเบฐเบเบปเบ”)
  5. เบžเบงเบเป€เบฎเบปเบฒเบเบณเบฅเบฑเบ‡เบ‚เบฝเบ™ SOP เบ„เบทเบ™เปƒเปเปˆเป€เบžเบทเปˆเบญเบ™เบณเปƒเบŠเป‰เบเบปเบ”เบฅเบฐเบšเบฝเบšเปƒเบ™เบ‚เบฑเป‰เบ™เบ•เบญเบ™เบ•เปˆเบฒเบ‡เป†, เบ„เบทเบเบฑเบšเบŠเบญเบšเปเบงเบญเบทเปˆเบ™เป†เปƒเบ™ Cloudflare, เปเบ•เปˆเปƒเบ™เบ‚เบฐเบ™เบฐเบ”เบฝเบงเบเบฑเบ™เบเปเบกเบตเบ„เบงเบฒเบกเบชเบฒเบกเบฒเบ”เปƒเบ™เบเบฒเบ™เบ™เบณเปƒเบŠเป‰เบขเปˆเบฒเบ‡เบฎเบตเบšเบ”เปˆเบงเบ™เปƒเบ™เบ—เบปเปˆเบงเป‚เบฅเบ เบ–เป‰เบฒเบเบฒเบ™เป‚เบˆเบกเบ•เบตเป„เบ”เป‰เป€เบฅเบตเปˆเบกเบ‚เบถเป‰เบ™เปเบฅเป‰เบง.
  6. เบžเบงเบเป€เบฎเบปเบฒเบเบณเบฅเบฑเบ‡เบžเบฑเบ”เบ—เบฐเบ™เบฒเบ„เบงเบฒเบกเบชเบฒเบกเบฒเบ”เปƒเบ™เบเบฒเบ™เบฅเบถเบš Cloudflare dashboard เปเบฅเบฐ API เบญเบญเบเบˆเบฒเบเบžเบฒเบเบžเบทเป‰เบ™ Cloudflare เบขเปˆเบฒเบ‡เบฎเบตเบšเบ”เปˆเบงเบ™.
  7. เบเบฒเบ™เบญเบฑเบšเป€เบ”เบ”เปœเป‰เบฒเบญเบฑเบ”เบ•เบฐเป‚เบ™เบกเบฑเบ” เบชเบฐเบ–เบฒเบ™เบฐ Cloudflare.

เป„เบฅเบเบฐเบเบฒเบงเบžเบงเบเป€เบฎเบปเบฒเบเปเบฒเบฅเบฑเบ‡เบเป‰เบฒเบเบญเบญเบเป„เบ›เบˆเบฒเบ Lua WAF เบ‚เป‰เบฒเบžเบฐเป€เบˆเบปเป‰เบฒเป„เบ”เป‰เบ‚เบฝเบ™เบชเบญเบ‡เบชเบฒเบกเบ›เบตเบเปˆเบญเบ™. เบเป‰เบฒเบ WAF เป„เบ› เบฅเบฐเบšเบปเบšเป„เบŸเบงเปเปƒเปเปˆ. เบ”เป‰เบงเบเบงเบดเบ—เบตเบ™เบตเป‰ WAF เบˆเบฐเป„เบงเบ‚เบถเป‰เบ™เปเบฅเบฐเป„เบ”เป‰เบฎเบฑเบšเบเบฒเบ™เบ›เบปเบเบ›เป‰เบญเบ‡เป€เบžเบตเปˆเบกเป€เบ•เบตเบก.

เบชเบฐเบซเบฅเบธเบš

เบ„เบงเบฒเบกเบฅเบปเป‰เบกเป€เบซเบผเบงเบ™เบตเป‰เป€เบฎเบฑเบ”เปƒเบซเป‰เป€เบเบตเบ”เบšเบฑเบ™เบซเบฒเบชเปเบฒเบฅเบฑเบšเบžเบงเบเป€เบฎเบปเบฒเปเบฅเบฐเบฅเบนเบเบ„เป‰เบฒเบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒ. เบžเบงเบเป€เบฎเบปเบฒเบ›เบฐเบ•เบดเบšเบฑเบ”เบขเปˆเบฒเบ‡เป„เบงเบงเบฒเป€เบžเบทเปˆเบญเปเบเป‰เป„เบ‚เบชเบฐเบ–เบฒเบ™เบฐเบเบฒเบ™เปเบฅเบฐเบ›เบฐเบˆเบธเบšเบฑเบ™เบเปเบฒเบฅเบฑเบ‡เป€เบฎเบฑเบ”เบงเบฝเบเบเปˆเบฝเบงเบเบฑเบšเบ‚เปเป‰เบšเบปเบเบžเปˆเบญเบ‡เปƒเบ™เบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบ—เบตเปˆเป€เบฎเบฑเบ”เปƒเบซเป‰เป€เบเบตเบ”เบญเบธเบ›เบฐเบ•เบดเป€เบซเบ”, เป€เบŠเบฑเปˆเบ™เบ”เบฝเบงเบเบฑเบ™เบเบฑเบšเบเบฒเบ™เบ‚เบธเบ”เบ‚เบธเบกเป€เบฅเบดเบเบ•เบทเปˆเบกเบญเบตเบเป€เบžเบทเปˆเบญเบ›เป‰เบญเบ‡เบเบฑเบ™เบšเบฑเบ™เบซเบฒเบ—เบตเปˆเบญเบฒเบ”เบˆเบฐเป€เบเบตเบ”เบ‚เบทเป‰เบ™เบ”เป‰เบงเบเบเบฒเบ™เบชเบฐเปเบ”เบ‡เบญเบญเบเป€เบ›เบฑเบ™เบ›เบปเบเบเบฐเบ•เบดเปƒเบ™เบญเบฐเบ™เบฒเบ„เบปเบ”เปƒเบ™เป€เบงเบฅเบฒเบ—เบตเปˆเบเบฒเบ™เป€เบ„เบทเปˆเบญเบ™เบเป‰เบฒเบเป„เบ›เบชเบนเปˆเป€เบ•เบฑเบเป‚เบ™เป‚เบฅเบขเบตเปƒเบซเบกเปˆ.

เบžเบงเบเป€เบฎเบปเบฒเบกเบตเบ„เบงเบฒเบกเบญเบฑเบšเบญเบฒเบเบซเบผเบฒเบเบเปˆเบฝเบงเบเบฑเบšเบšเบฑเบ™เบซเบฒเบ™เบตเป‰ เปเบฅเบฐเบ‚เปเป‚เบ—เบ”เบฅเบนเบเบ„เป‰เบฒเบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒ. เบžเบงเบเป€เบฎเบปเบฒเบซเบงเบฑเบ‡เบงเปˆเบฒเบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡เป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰เบˆเบฐเบฎเบฑเบšเบ›เบฐเบเบฑเบ™เบงเปˆเบฒเบšเบฒเบ‡เบชเบดเปˆเบ‡เบšเบฒเบ‡เบขเปˆเบฒเบ‡เป€เบŠเบฑเปˆเบ™เบ™เบตเป‰เบˆเบฐเบšเปเปˆเป€เบเบตเบ”เบ‚เบถเป‰เบ™เบญเบตเบ.

เบ„เปเบฒเบฎเป‰เบญเบ‡เบชเบฐเบซเบกเบฑเบ. Backtracking เบเบฒเบ™เบชเบฐเปเบ”เบ‡เบญเบญเบเบ›เบปเบเบเบฐเบ•เบด

เป€เบžเบทเปˆเบญเป€เบ‚เบปเป‰เบฒเปƒเบˆเบงเบดเบ—เบตเบเบฒเบ™เบชเบฐเปเบ”เบ‡เบญเบญเบ:

(?:(?:"|'|]|}||d
(?:nan|infinity|true|false|null|undefined|symbol|math)|`|-
|+)+[)]*;?((?:s|-|~|!|{}||||+)*.*(?:.*=.*)))

เบเบดเบ™เบŠเบฑเบšเบžเบฐเบเบฒเบเบญเบ™ CPU เบ—เบฑเบ‡เบซเบกเบปเบ”, เบ—เปˆเบฒเบ™เบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เบฎเบนเป‰เบซเบ™เป‰เบญเบเบซเบ™เบถเปˆเบ‡เบเปˆเบฝเบงเบเบฑเบšเบงเบดเบ—เบตเบ—เบตเปˆเป€เบ„เบทเปˆเบญเบ‡เบˆเบฑเบเบชเบฐเปเบ”เบ‡เบญเบญเบเบ›เบปเบเบเบฐเบ•เบดเบกเบฒเบ”เบ•เบฐเบ–เบฒเบ™เป€เบฎเบฑเบ”เบงเบฝเบ. เบšเบฑเบ™เบซเบฒเบขเบนเปˆเบ—เบตเปˆเบ™เบตเป‰เปเบกเปˆเบ™เบฎเบนเบšเปเบšเบš .*(?:.*=.*). (?: เปเบฅเบฐเบ—เบตเปˆเบชเบญเบ”เบ„เป‰เบญเบ‡เบเบฑเบ™ ) เปเบกเปˆเบ™เบเบธเปˆเบกเบ—เบตเปˆเบšเปเปˆเปเบกเปˆเบ™เบเบฒเบ™เบˆเบฑเบšเบžเบฒเบš (เบ„เบทเบเบฒเบ™เบชเบฐเปเบ”เบ‡เบญเบญเบเปƒเบ™เบงเบปเบ‡เป€เบฅเบฑเบšเบ–เบทเบเบˆเบฑเบ”เบเบธเปˆเบกเป€เบ›เบฑเบ™เบเบฒเบ™เบชเบฐเปเบ”เบ‡เบœเบปเบ™เบ”เบฝเบง).

เปƒเบ™เบชเบฐเบžเบฒเบšเบเบฒเบ™เบ‚เบญเบ‡เบเบฒเบ™เบšเปเบฅเบดเป‚เบžเบ CPU เบซเบผเบฒเบเป€เบเบตเบ™เป„เบ›, เบฎเบนเบšเปเบšเบšเบ™เบตเป‰เบชเบฒเบกเบฒเบ”เบ–เบทเบเบญเบฐเบ—เบดเบšเบฒเบเป€เบ›เบฑเบ™ .*.*=.*. เปƒเบ™เบฎเบนเบšเปเบšเบšเบ™เบตเป‰, เบฎเบนเบšเปเบšเบšเป€เบšเบดเปˆเบ‡เบ„เบทเบงเปˆเบฒเบชเบฐเบฅเบฑเบšเบชเบฑเบšเบŠเป‰เบญเบ™เบ—เบตเปˆเบšเปเปˆเบˆเปเบฒเป€เบ›เบฑเบ™. เปเบ•เปˆเบชเปเบฒเบ„เบฑเบ™เบเบงเปˆเบฒเบ™เบฑเป‰เบ™, เปƒเบ™เป‚เบฅเบเบ—เบตเปˆเปเบ—เป‰เบˆเบดเบ‡, เบเบฒเบ™เบชเบฐเปเบ”เบ‡เบญเบญเบ (เป€เบŠเบฑเปˆเบ™เบเบฒเบ™เบชเบฐเปเบ”เบ‡เบญเบญเบเบ—เบตเปˆเบชเบฑเบšเบชเบปเบ™เปƒเบ™เบเบปเบ”เบฅเบฐเบšเบฝเบš WAF) เบ—เบตเปˆเบ‚เปเปƒเบซเป‰เป€เบ„เบทเปˆเบญเบ‡เบˆเบฑเบเบเบปเบ‡เบเบฑเบšเบŠเบดเป‰เบ™เบชเปˆเบงเบ™เบ—เบตเปˆเบ›เบฐเบ•เบดเบšเบฑเบ”เบ•เบฒเบกเป‚เบ”เบเบŠเบดเป‰เบ™เบชเปˆเบงเบ™เบญเบทเปˆเบ™เบชเบฒเบกเบฒเบ”เบ™เปเบฒเป„เบ›เบชเบนเปˆเป„เบžเบžเบดเบšเบฑเบ”เบ—เบฒเบ‡เบซเบฅเบฑเบ‡. เปเบฅเบฐเบงเปˆเบฒเป€เบ›เบฑเบ™เบซเบเบฑเบ‡.

เบฅเบฒเบเบฅเบฐเบญเบฝเบ”เบ‚เบญเบ‡เบเบฒเบ™เบขเบธเบ” Cloudflare เปƒเบ™เบงเบฑเบ™เบ—เบต 2 เบเปเบฅเบฐเบเบปเบ” 2019

เปƒเบ™เบเบฒเบ™เบชเบฐเปเบ”เบ‡เบญเบญเบเป€เบ›เบฑเบ™เบ›เบปเบเบเบฐเบ•เบด . เบซเบกเบฒเบเบ„เบงเบฒเบกเบงเปˆเบฒเบ—เปˆเบฒเบ™เบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เบˆเบฑเบšเบ„เบนเปˆเบซเบ™เบถเปˆเบ‡เบฅเบฑเบเบชเบฐเบ™เบฐ, .* - เบˆเบฑเบšเบ„เบนเปˆเบ•เบปเบงเบญเบฑเบเบชเบญเบ™เบชเบนเบ™เบซเบผเบทเบซเบผเบฒเบเบเบงเปˆเบฒ "greedily", เบ™เบฑเป‰เบ™เปเบกเปˆเบ™, เบˆเบฑเบšเบ•เบปเบงเบชเบนเบ‡เบชเบธเบ”, เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™ .*.*=.* เบซเบกเบฒเบโ€‹เบ„เบงเบฒเบกโ€‹เบงเปˆเบฒโ€‹เบˆเบฑเบšโ€‹เบ„เบนเปˆโ€‹เบชเบนเบ™โ€‹เบซเบผเบทโ€‹เบซเบผเบฒเบโ€‹เบ•เบปเบงโ€‹เบญเบฑเบโ€‹เบชเบญเบ™โ€‹, เบซเบผเบฑเบ‡โ€‹เบˆเบฒเบโ€‹เบ™เบฑเป‰เบ™โ€‹เบˆเบฑเบšโ€‹เบ„เบนเปˆโ€‹เบชเบนเบ™โ€‹เบซเบผเบทโ€‹เบซเบผเบฒเบโ€‹เบ•เบปเบงโ€‹เบญเบฑเบโ€‹เบชเบญเบ™โ€‹, เบŠเบญเบโ€‹เบซเบฒโ€‹เบ•เบปเบงโ€‹เบญเบฑเบโ€‹เบชเบญเบ™ = เบ•เบปเบงโ€‹เบญเบฑเบโ€‹เบชเบญเบ™โ€‹, เบเบปเบ‡โ€‹เบชเบนเบ™โ€‹เบซเบผเบทโ€‹เบซเบผเบฒเบโ€‹เบ•เบปเบงโ€‹เบญเบฑเบโ€‹เบชเบญเบ™โ€‹.

เปƒเบซเป‰เป€เบญเบปเบฒเป€เบชเบฑเป‰เบ™เบเบฒเบ™เบ—เบปเบ”เบชเบญเบš x=x. เบกเบฑเบ™เบเบปเบ‡เบเบฑเบ™เบเบฑเบšเบเบฒเบ™เบชเบฐเปเบ”เบ‡เบญเบญเบ .*.*=.*. .*.* เบเปˆเบญเบ™เป€เบ„เบทเปˆเบญเบ‡เปเบฒเบเป€เบ—เบปเปˆเบฒเบเบฑเบ™เบˆเบฐเบเบปเบ‡เบเบฑเบšเบ•เบปเบงเบ—เบณเบญเบดเบ” x (เบซเบ™เบถเปˆเบ‡โ€‹เปƒเบ™โ€‹เบเบธเปˆเบกโ€‹ .* เบเบปเบ‡เบเบฑเบš x, เปเบฅเบฐเบ—เบตเบชเบญเบ‡ - เบ•เบปเบงเบญเบฑเบเบชเบญเบ™เบชเบนเบ™). .* after = matches last x.

เบเบฒเบ™เบ›เบฝเบšเบ—เบฝเบšเบ™เบตเป‰เบฎเบฝเบเบฎเป‰เบญเบ‡เปƒเบซเป‰เบกเบต 23 เบ‚เบฑเป‰เบ™เบ•เบญเบ™. เบเบธเปˆเบกเบ—เปเบฒเบญเบดเบ” .* ะฒ .*.*=.* เบ›เบฐเบ•เบดเบšเบฑเบ”เบขเปˆเบฒเบ‡เป‚เบฅเบšเบกเบฒเบเปเบฅเบฐเบเบปเบ‡เบเบฑเบšเบชเบฒเบเบ—เบฑเบ‡ เปเบปเบ” x=x. เป€เบ„เบทเปˆเบญเบ‡เบˆเบฑเบเบเป‰เบฒเบเป„เบ›เบซเบฒเบเบธเปˆเบกเบ•เปเปˆเป„เบ› .*. เบžเบงเบโ€‹เป€เบฎเบปเบฒโ€‹เบšเปเปˆโ€‹เบกเบตโ€‹เบ•เบปเบงโ€‹เบญเบฑเบโ€‹เบชเบญเบ™โ€‹เปƒเบ”โ€‹เบ—เบตเปˆโ€‹เบˆเบฐโ€‹เบเบปเบ‡โ€‹เบเบฑเบ™โ€‹, เบ”เบฑเปˆเบ‡โ€‹เบ™เบฑเป‰เบ™โ€‹เบเบธเปˆเบกโ€‹เบ—เบตโ€‹เบชเบญเบ‡โ€‹ .* เบเบปเบ‡เบเบฑเบšเบชเบนเบ™เบ•เบปเบงเบญเบฑเบเบชเบญเบ™ (เบญเบฑเบ™เบ™เบตเป‰เปเบกเปˆเบ™เบญเบฐเบ™เบธเบเบฒเบ”). เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™, เป€เบ„เบทเปˆเบญเบ‡เบˆเบฑเบเป€เบ„เบทเปˆเบญเบ™เบเป‰เบฒเบเป„เบ›เบ—เบตเปˆเบ›เป‰เบฒเบ =. เบšเปเปˆเบกเบตเบชเบฑเบ™เบเบฒเบฅเบฑเบเป€เบžเบตเปˆเบกเป€เบ•เบตเบก (เบเบธเปˆเบกเบ—เปเบฒเบญเบดเบ” .* เปƒเบŠเป‰เบเบฒเบ™เบชเบฐเปเบ”เบ‡เบญเบญเบเบ—เบฑเบ‡เบซเบกเบปเบ” x=x), เบšเปเปˆเบกเบตเบเบฒเบ™เบ›เบฝเบšเบ—เบฝเบšเป€เบเบตเบ”เบ‚เบถเป‰เบ™.

เปเบฅเบฐเบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™เป€เบ„เบทเปˆเบญเบ‡เบˆเบฑเบเบเบฒเบ™เบชเบฐเปเบ”เบ‡เบญเบญเบเบ›เบปเบเบเบฐเบ•เบดเบเบฑเบšเบ„เบทเบ™เบชเบนเปˆเบˆเบธเบ”เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™. เบฅเบฒเบงเบเป‰เบฒเบงเป„เบ›เบชเบนเปˆเบเบธเปˆเบกเบ—เปเบฒเบญเบดเบ” .* เปเบฅเบฐเบ›เบฝเบšเบ—เบฝเบšเบกเบฑเบ™ ั x= (เปเบ—เบ™เบ—เบตเปˆเบˆเบฐ x=x), เปเบฅเบฐเบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™เปƒเบŠเป‰เป€เบงเบฅเบฒเปƒเบ™เบเบธเปˆเบกเบ—เบตเบชเบญเบ‡ .*. เบเบธเปˆเบกเบ—เบตเบชเบญเบ‡ .* เปเบกเปˆเบ™เบ›เบฝเบšเบ—เบฝเบšเบเบฑเบšเบ„เบฑเป‰เบ‡เบ—เบตเบชเบญเบ‡ x, เปเบฅเบฐเบžเบงเบเป€เบฎเบปเบฒเบญเบตเบเป€เบ—เบทเปˆเบญเบซเบ™เบถเปˆเบ‡เบšเปเปˆเบกเบตเบ•เบปเบงเบญเบฑเบเบชเบญเบ™เบ›เบฐเป„เบงเป‰. เปเบฅเบฐเปƒเบ™เป€เบงเบฅเบฒเบ—เบตเปˆเป€เบ„เบทเปˆเบญเบ‡เบˆเบฑเบเป„เบ›เบฎเบญเบ”เบญเบตเบเป€เบ—เบทเปˆเบญเบซเบ™เบถเปˆเบ‡ = ะฒ .*.*=.*, เบšเปเปˆเบกเบตเบซเบเบฑเบ‡เป€เบฎเบฑเบ”เบงเบฝเบ. เปเบฅเบฐโ€‹เป€เบ‚เบปเบฒโ€‹เป„เบ”เป‰โ€‹เบเบฑเบšโ€‹เบ„เบทเบ™โ€‹เป„เบ›โ€‹เบšเปˆเบญเบ™โ€‹เบญเบตเบโ€‹เป€เบ—เบทเปˆเบญโ€‹เบซเบ™เบถเปˆเบ‡.

เป€เบงเบฅเบฒเบ™เบตเป‰เบเบธเปˆเบก .* เบเบฑเบ‡เบเบปเบ‡เบเบฑเบ™ x=, เปเบ•เปˆเบเบธเปˆเบกเบ—เบตเบชเบญเบ‡ .* เบšเปเปˆโ€‹เบกเบตโ€‹เบญเบตเบโ€‹เปเบฅเป‰เบง x, เปเบฅเบฐเบชเบนเบ™เบ•เบปเบงเบญเบฑเบเบชเบญเบ™. เป€เบ„เบทเปˆเบญเบ‡เบˆเบฑเบเบเปเบฒเบฅเบฑเบ‡เบžเบฐเบเบฒเบเบฒเบกเบŠเบญเบเบซเบฒเบ•เบปเบงเบซเบ™เบฑเบ‡เบชเบท = เปƒเบ™โ€‹เบฎเบนเบšโ€‹เปเบšเบšโ€‹เบเบฒเบ™โ€‹ .*.*=.*, เปเบ•เปˆเบšเปเปˆเป„เบ”เป‰เบญเบญเบเบกเบฒ (เบซเบผเบฑเบ‡เบˆเบฒเบเบ—เบฑเบ‡เบซเบกเบปเบ”, เบเบธเปˆเบกเบ—เปเบฒเบญเบดเบ”เป„เบ”เป‰เบ„เบญเบšเบ„เบญเบ‡เบกเบฑเบ™เปเบฅเป‰เบง .*). เปเบฅเบฐโ€‹เป€เบ‚เบปเบฒโ€‹เป„เบ”เป‰โ€‹เบเบฑเบšโ€‹เบ„เบทเบ™โ€‹เป„เบ›โ€‹เบšเปˆเบญเบ™โ€‹เบญเบตเบโ€‹เป€เบ—เบทเปˆเบญโ€‹เบซเบ™เบถเปˆเบ‡.

เบ„เบฑเป‰เบ‡เบ™เบตเป‰เป€เบ›เบฑเบ™เบเบธเปˆเบกเบ—เบณเบญเบดเบ” .* เปƒเบŠเป‰เป€เบงเบฅเบฒเบžเบฝเบ‡เปเบ•เปˆ x เบ—เปเบฒเบญเบดเบ”. เปเบ•เปˆเบเบธเปˆเบกเบ—เบตเบชเบญเบ‡ .* "greedily" captures =x. เป€เบˆเบปเป‰เบฒเป€เบ”เบปเบฒเปเบฅเป‰เบงเบšเปเปˆเบงเปˆเบฒเบกเบฑเบ™เบˆเบฐเป€เบเบตเบ”เบซเบเบฑเบ‡เบ‚เบถเป‰เบ™? เป€เบ„เบทเปˆเบญเบ‡เบˆเบฑเบเบžเบฐเบเบฒเบเบฒเบกเบ—เบตเปˆเบˆเบฐเบเบปเบ‡เบเบฑเบšเบ•เบปเบงเบซเบ™เบฑเบ‡เบชเบท =, เบฅเบปเป‰เบกเป€เบซเบฅเบงเปเบฅเบฐเป€เบฎเบฑเบ”เปƒเบซเป‰ backtracking เบญเบทเปˆเบ™.

เบเบธเปˆเบก เบ—เบณ เบญเบดเบ” .* เบเบฑเบ‡เบเบปเบ‡เบเบฑเบšเบญเบฑเบ™เบ—เปเบฒเบญเบดเบ” x. เบ—เบตเบชเบญเบ‡ .* เบžเบฝเบ‡เปเบ•เปˆเปƒเบŠเป‰เป€เบงเบฅเบฒ =. เปเบ™เปˆเบ™เบญเบ™, เป€เบ„เบทเปˆเบญเบ‡เบˆเบฑเบเบšเปเปˆเบชเบฒเบกเบฒเบ”เบเบปเบ‡เบเบฑเบšเบ•เบปเบงเบซเบ™เบฑเบ‡เบชเบทเป„เบ”เป‰ =, เป€เบ™เบทเปˆเบญเบ‡เบˆเบฒเบเบงเปˆเบฒเบเบธเปˆเบกเบ—เบตเบชเบญเบ‡เป„เบ”เป‰เป€เบฎเบฑเบ”เปเบฅเป‰เบงเบ™เบตเป‰ .*. เปเบฅเบฐเบญเบตเบเป€เบ—เบทเปˆเบญเบซเบ™เบถเปˆเบ‡ backtracking. เปเบฅเบฐเบžเบงเบเป€เบฎเบปเบฒเบเปเบฒเบฅเบฑเบ‡เบžเบฐเบเบฒเบเบฒเบกเบˆเบฑเบšเบ„เบนเปˆเบชเบฒเบเบ‚เบญเบ‡เบชเบฒเบกเบ•เบปเบงเบญเบฑเบเบชเบญเบ™!

เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™, เบเบธเปˆเบกเบ—เปเบฒเบญเบดเบ” .* เบเบปเบ‡เบเบฑเบšเบžเบฝเบ‡เปเบ•เปˆเบญเบฑเบ™เบ—เปเบฒเบญเบดเบ” x, เบ—เบตเบชเบญเบ‡ .* - เบกเบตเบฅเบฑเบเบชเบฐเบ™เบฐเบชเบนเบ™, เปเบฅเบฐเป€เบ„เบทเปˆเบญเบ‡เบˆเบฑเบเบชเบธเบ”เบ—เป‰เบฒเบเบเบปเบ‡เบเบฑเบšเบ•เบปเบงเบซเบ™เบฑเบ‡เบชเบท = เปƒเบ™เบเบฒเบ™เบชเบฐเปเบ”เบ‡เบญเบญเบ ั = เปƒเบ™เปเบ–เบง. เบ•เปเปˆเป„เบ›เปเบกเปˆเบ™เบเบธเปˆเบกเบชเบธเบ”เบ—เป‰เบฒเบ .* เปเบกเปˆเบ™เบ›เบฝเบšเบ—เบฝเบšเบเบฑเบšเบญเบฑเบ™เบชเบธเบ”เบ—เป‰เบฒเบ x.

23 เบ‚เบฑเป‰เบ™โ€‹เบ•เบญเบ™โ€‹เบžเบฝเบ‡โ€‹เปเบ•เปˆโ€‹เบชเปเบฒโ€‹เบฅเบฑเบšโ€‹เบเบฒเบ™โ€‹ x=x. เป€เบšเบดเปˆเบ‡เบงเบดเบ”เบตเป‚เบญเบชเบฑเป‰เบ™เบเปˆเบฝเบงเบเบฑเบšเบเบฒเบ™เปƒเบŠเป‰ Perl Regexp::Debugger, เป€เบŠเบดเปˆเบ‡เบชเบฐเปเบ”เบ‡เปƒเบซเป‰เป€เบซเบฑเบ™เบงเบดเบ—เบตเบเบฒเบ™เบ‚เบฑเป‰เบ™เบ•เบญเบ™เปเบฅเบฐ backtracking เป€เบเบตเบ”เบ‚เบถเป‰เบ™.

เบฅเบฒเบเบฅเบฐเบญเบฝเบ”เบ‚เบญเบ‡เบเบฒเบ™เบขเบธเบ” Cloudflare เปƒเบ™เบงเบฑเบ™เบ—เบต 2 เบเปเบฅเบฐเบเบปเบ” 2019

เบ™เบตเป‰เปเบกเปˆเบ™เปเบฅเป‰เบงเบซเบผเบฒเบเบ‚เบญเบ‡เบเบฒเบ™เป€เบฎเบฑเบ”เบงเบฝเบ, เปเบ•เปˆเบชเบดเปˆเบ‡เบ—เบตเปˆเบ–เป‰เบฒเบซเบฒเบเบงเปˆเบฒเปเบ—เบ™เบ—เบตเปˆเบˆเบฐ x=x เบžเบงเบโ€‹เป€เบฎเบปเบฒโ€‹เบˆเบฐโ€‹เบกเบต x=xx? เบ™เบฑเป‰เบ™เปเบกเปˆเบ™ 33 เบ‚เบฑเป‰เบ™เบ•เบญเบ™. เปเบฅเบฐเบ–เป‰เบฒ x=xxx? 45. เบ„เบงเบฒเบกเบชเปเบฒเบžเบฑเบ™เบšเปเปˆเปเบกเปˆเบ™เป€เบชเบฑเป‰เบ™. เป€เบชเบฑเป‰เบ™เบชเบฐเปเบ”เบ‡เบเบฒเบ™เบ›เบฝเบšเบ—เบฝเบšเบˆเบฒเบ x=x เบเบฒเบ™ x=xxxxxxxxxxxxxxxxxxxx (20 x ะฟะพัะปะต =). เบ–เป‰เบฒเบžเบงเบเป€เบฎเบปเบฒเบกเบต 20 x เบซเบผเบฑเบ‡เบˆเบฒเบ =, เป€เบ„เบทเปˆเบญเบ‡เบˆเบฑเบเบชเปเบฒเป€เบฅเบฑเบ”เบเบฒเบ™เบˆเบฑเบšเบ„เบนเปˆเปƒเบ™ 555 เบ‚เบฑเป‰เบ™เบ•เบญเบ™! (เบ™เบญเบเบˆเบฒเบเบ™เบฑเป‰เบ™, เบ–เป‰เบฒเบžเบงเบเป€เบฎเบปเบฒเบชเบนเบ™เป€เบชเบ x= เปเบฅเบฐเบชเบฒเบเบžเบฝเบ‡เปเบ•เปˆเบ›เบฐเบเบญเบšเบ”เป‰เบงเบ 20 x, เป€เบ„เบทเปˆเบญเบ‡เบˆเบฑเบเบˆเบฐเปƒเบŠเป‰เป€เบงเบฅเบฒ 4067 เบ‚เบฑเป‰เบ™เบ•เบญเบ™เป€เบžเบทเปˆเบญเป€เบ‚เบปเป‰เบฒเปƒเบˆเบงเปˆเบฒเบšเปเปˆเบกเบตเบเบฒเบ™เปเบ‚เปˆเบ‡เบ‚เบฑเบ™เบเบฑเบ™).

เบฅเบฒเบเบฅเบฐเบญเบฝเบ”เบ‚เบญเบ‡เบเบฒเบ™เบขเบธเบ” Cloudflare เปƒเบ™เบงเบฑเบ™เบ—เบต 2 เบเปเบฅเบฐเบเบปเบ” 2019

เบงเบดเบ”เบตเป‚เบญเบ™เบตเป‰เบชเบฐเปเบ”เบ‡เปƒเบซเป‰เป€เบซเบฑเบ™ backtracking เบ—เบฑเบ‡เบซเบกเบปเบ”เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบ›เบฝเบšเบ—เบฝเบš x=xxxxxxxxxxxxxxxxxxxx:

เบฅเบฒเบเบฅเบฐเบญเบฝเบ”เบ‚เบญเบ‡เบเบฒเบ™เบขเบธเบ” Cloudflare เปƒเบ™เบงเบฑเบ™เบ—เบต 2 เบเปเบฅเบฐเบเบปเบ” 2019

เบšเบฑเบ™เบซเบฒเปเบกเปˆเบ™เบงเปˆเบฒเป€เบกเบทเปˆเบญเบ‚เบฐเบซเบ™เบฒเบ”เบ‚เบญเบ‡เบชเบฐเบ•เบฃเบดเบ‡เป€เบžเบตเปˆเบกเบ‚เบถเป‰เบ™, เป€เบงเบฅเบฒเบเบฒเบ™เบˆเบฑเบšเบ„เบนเปˆเบˆเบฐเป€เบ•เบตเบšเป‚เบ• super-linearly. เปเบ•เปˆเบชเบดเปˆเบ‡เบ—เบตเปˆเบญเบฒเบ”เบˆเบฐเบฎเป‰เบฒเบเปเบฎเบ‡เบเบงเปˆเบฒเป€เบเบปเปˆเบฒเบ–เป‰เบฒเบซเบฒเบเบงเปˆเบฒเบเบฒเบ™เบชเบฐเปเบ”เบ‡เบญเบญเบเป€เบ›เบฑเบ™เบ›เบปเบเบเบฐเบ•เบดเป„เบ”เป‰เบ–เบทเบเบ”เบฑเบ”เปเบเป‰เป€เบฅเบฑเบเบ™เป‰เบญเบ. เปƒเบซเป‰เป€เบงเบปเป‰เบฒเบงเปˆเบฒเบžเบงเบเป€เบฎเบปเบฒเบกเบต .*.*=.*; (เบ™เบฑเป‰เบ™โ€‹เปเบกเปˆเบ™โ€‹เบงเปˆเบฒโ€‹เบกเบต semicolon เบ•เบปเบงโ€‹เปœเบฑเบ‡โ€‹เบชเบทโ€‹เบขเบนเปˆโ€‹เบ—เป‰เบฒเบโ€‹เบ‚เบญเบ‡โ€‹เบฎเบนเบšโ€‹เปเบšเบš). เบ•เบปเบงเบขเปˆเบฒเบ‡, เป€เบžเบทเปˆเบญเบˆเบฑเบšเบ„เบนเปˆเบเบฒเบ™เบชเบฐเปเบ”เบ‡เบญเบญเบเป€เบŠเบฑเปˆเบ™ foo=bar;.

เปเบฅเบฐเบ—เบตเปˆเบ™เบตเป‰ backtracking เบˆเบฐเป€เบ›เบฑเบ™เป„เบžเบžเบดเบšเบฑเบ”เบ—เบตเปˆเปเบ—เป‰เบˆเบดเบ‡. เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบ›เบฝเบšเบ—เบฝเบš x=x เบกเบฑเบ™เบˆเบฐเปƒเบŠเป‰เป€เบงเบฅเบฒ 90 เบ‚เบฑเป‰เบ™เบ•เบญเบ™, เบšเปเปˆเปเบกเปˆเบ™ 23. เปเบฅเบฐเบˆเปเบฒเบ™เบงเบ™เบ™เบฑเป‰เบ™เบเปเบฒเบฅเบฑเบ‡เป€เบ•เบตเบšเป‚เบ•เบขเปˆเบฒเบ‡เป„เบงเบงเบฒ. เป€เบžเบทเปˆเบญเบ›เบฝเบšเบ—เบฝเบš x= เปเบฅเบฐ 20 x, 5353 เบ‚เบฑเป‰เบ™เบ•เบญเบ™เปเบกเปˆเบ™เบˆเปเบฒเป€เบ›เบฑเบ™. เบ™เบตเป‰เปเบกเปˆเบ™เบ•เบฒเบ•เบฐเบฅเบฒเบ‡. เป€เบšเบดเปˆเบ‡เบ„เปˆเบฒเปเบเบ™ Y เป€เบกเบทเปˆเบญเบ›เบฝเบšเบ—เบฝเบšเบเบฑเบšเบ•เบฒเบ•เบฐเบฅเบฒเบ‡เบ—เบตเปˆเบœเปˆเบฒเบ™เบกเบฒ.

เบฅเบฒเบเบฅเบฐเบญเบฝเบ”เบ‚เบญเบ‡เบเบฒเบ™เบขเบธเบ” Cloudflare เปƒเบ™เบงเบฑเบ™เบ—เบต 2 เบเปเบฅเบฐเบเบปเบ” 2019

เบ–เป‰เบฒโ€‹เบซเบฒเบโ€‹เบงเปˆเบฒโ€‹เบ—เปˆเบฒเบ™โ€‹เบกเบตโ€‹เบ„เบงเบฒเบกโ€‹เบชเบปเบ™โ€‹เปƒเบˆโ€‹, เบเบงเบ”โ€‹เบชเบญเบšโ€‹เบเบฒเบ™โ€‹เบญเบญเบโ€‹เบ—เบฑเบ‡โ€‹เบซเบกเบปเบ” 5353 เบ‚เบฑเป‰เบ™โ€‹เบ•เบญเบ™โ€‹เบ—เบตเปˆโ€‹เบšเปเปˆโ€‹เบชเปเบฒโ€‹เป€เบฅเบฑเบ”โ€‹เบเบฒเบ™โ€‹เบˆเบฑเบšโ€‹เบ„เบนเปˆโ€‹ x=xxxxxxxxxxxxxxxxxxxx ะธ .*.*=.*;

เบฅเบฒเบเบฅเบฐเบญเบฝเบ”เบ‚เบญเบ‡เบเบฒเบ™เบขเบธเบ” Cloudflare เปƒเบ™เบงเบฑเบ™เบ—เบต 2 เบเปเบฅเบฐเบเบปเบ” 2019

เป‚เบ”เบเบเบฒเบ™เปƒเบŠเป‰เบ„เบปเบ™เบ‚เบตเป‰เบ„เป‰เบฒเบ™เบซเบผเบฒเบเบเบงเปˆเบฒเบเบฒเบ™เบˆเบฑเบšเบ„เบนเปˆเบ—เบตเปˆเป‚เบฅเบšเบกเบฒเบ, เบ‚เบญเบšเป€เบ‚เบ”เบ‚เบญเบ‡เบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบกเบซเบผเบฑเบ‡เบชเบฒเบกเบฒเบ”เบ„เบงเบšเบ„เบธเบกเป„เบ”เป‰. เบ–เป‰เบฒเบžเบงเบเป€เบฎเบปเบฒเบ›เปˆเบฝเบ™เบเบฒเบ™เบชเบฐเปเบ”เบ‡เบญเบญเบเบ•เบปเป‰เบ™เบชเบฐเบšเบฑเบšเป€เบ›เบฑเบ™ .*?.*?=.*?, เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบ›เบฝเบšเบ—เบฝเบš x=x เบกเบฑเบ™เบˆเบฐเปƒเบŠเป‰เป€เบงเบฅเบฒ 11 เบ‚เบฑเป‰เบ™เบ•เบญเบ™ (เบšเปเปˆเปเบกเปˆเบ™ 23). เบชเปเบฒเบฅเบฑเบš x=xxxxxxxxxxxxxxxxxxxx. เบ—เบฑเบ‡เบซเบกเบปเบ”เป€เบžเบฒเบฐเบงเปˆเบฒ ? ะฟะพัะปะต .* เบšเบญเบเป€เบ„เบทเปˆเบญเบ‡เบˆเบฑเบเปƒเบซเป‰เบเบปเบ‡เบเบฑเบšเบ•เบปเบงเป€เบฅเบเบ•เปเบฒเปˆเบชเบธเบ”เบ—เบตเปˆเบ‚เบญเบ‡เบ•เบปเบงเบญเบฑเบเบชเบญเบ™เบเปˆเบญเบ™เบ—เบตเปˆเบˆเบฐเบ”เปเบฒเป€เบ™เบตเบ™เบ•เปเปˆเป„เบ›.

เปเบ•เปˆเปเบœเบ™เบ—เบตเปˆเบ‚เบตเป‰เบเบฝเบ”เบšเปเปˆเป„เบ”เป‰เปเบเป‰เป„เบ‚เบšเบฑเบ™เบซเบฒ backtracking เบขเปˆเบฒเบ‡เบชเบปเบกเบšเบนเบ™. เบ–เป‰เบฒเบžเบงเบเป€เบฎเบปเบฒเบ›เปˆเบฝเบ™เปเบ—เบ™เบ•เบปเบงเบขเปˆเบฒเบ‡เป„เบžเบžเบดเบšเบฑเบ” .*.*=.*; เบชเบธเบ” .*?.*?=.*?;, เป€เบงเบฅเบฒเบ›เบฐเบ•เบดเบšเบฑเบ”เบˆเบฐเบเบฑเบ‡เบ„เบปเบ‡เบขเบนเปˆเบ„เบทเบเบฑเบ™. x=x เบเบฑเบ‡เบ•เป‰เบญเบ‡เบเบฒเบ™ 555 เบ‚เบฑเป‰เบ™เบ•เบญเบ™, เปเบฅเบฐ x= เปเบฅเบฐ 20 x - 5353.

เบชเบดเปˆเบ‡เบ”เบฝเบงเบ—เบตเปˆเบชเบฒเบกเบฒเบ”เป€เบฎเบฑเบ”เป„เบ”เป‰ (เบ™เบญเบเป€เบซเบ™เบทเบญเบˆเบฒเบเบเบฒเบ™เบ‚เบฝเบ™เบ„เบทเบ™เปƒเบซเบกเปˆเบขเปˆเบฒเบ‡เบชเบปเบกเบšเบนเบ™เปเบšเบšเบชเปเบฒเบฅเบฑเบšเบ„เบงเบฒเบกเบชเบฐเป€เบžเบฒเบฐเบซเบผเบฒเบเบเบงเปˆเบฒเป€เบเบปเปˆเบฒ) เปเบกเปˆเบ™เบเบฒเบ™เบ›เบฐเบ–เบดเป‰เบกเป€เบ„เบทเปˆเบญเบ‡เบˆเบฑเบเบเบฒเบ™เบชเบฐเปเบ”เบ‡เบญเบญเบเบ›เบปเบเบเบฐเบ•เบดเบ—เบตเปˆเบกเบตเบเบปเบ™เป„เบ backtracking เบ‚เบญเบ‡เบกเบฑเบ™. เบ™เบตเป‰เปเบกเปˆเบ™เบชเบดเปˆเบ‡เบ—เบตเปˆเบžเบงเบเป€เบฎเบปเบฒเบˆเบฐเป€เบฎเบฑเบ”เปƒเบ™เบชเบญเบ‡เบชเบฒเบกเบญเบฒเบ—เบดเบ”เบ‚เป‰เบฒเบ‡เบซเบ™เป‰เบฒ.

เบเบฒเบ™เปเบเป‰เป„เบ‚เบšเบฑเบ™เบซเบฒเบ™เบตเป‰เปเบกเปˆเบ™เป€เบ›เบฑเบ™เบ—เบตเปˆเบฎเบนเป‰เบˆเบฑเบเบ™เบฑเบšเบ•เบฑเป‰เบ‡เปเบ•เปˆ 1968, เปƒเบ™เป€เบงเบฅเบฒเบ—เบตเปˆ Kent Thompson เบ‚เบฝเบ™เบšเบปเบ”เบ„เบงเบฒเบก เป€เบ•เบฑเบเบ™เบดเบเบเบฒเบ™เบ‚เบฝเบ™เป‚เบ›เบฅเปเบเบฅเบก: เบชเบนเบ”เบเบฒเบ™เบ„เบดเบ”เป„เบฅเปˆเบเบฒเบ™เบŠเบญเบเบซเบฒเปเบšเบšเบ›เบปเบเบเบฐเบ•เบด (โ€œเบงเบดเบ—เบตเบเบฒเบ™เบ‚เบฝเบ™เป‚เบ›เบฃเปเบเบฃเบก: เบชเบนเบ”เบเบฒเบ™เบ„เบดเบ”เป„เบฅเปˆเบเบฒเบ™เบŠเบญเบเบซเบฒเปเบšเบšเบ›เบปเบเบเบฐเบ•เบดโ€). เบšเบปเบ”เบ„เบงเบฒเบกเบญเบฐเบ—เบดเบšเบฒเบเบเบปเบ™เป„เบเบ—เบตเปˆเบญเบฐเบ™เบธเบเบฒเบ”เปƒเบซเป‰เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เบ›เปˆเบฝเบ™เบเบฒเบ™เบชเบฐเปเบ”เบ‡เบญเบญเบเบ›เบปเบเบเบฐเบ•เบดเป€เบ‚เบปเป‰เบฒเป„เบ›เปƒเบ™เป€เบ„เบทเปˆเบญเบ‡เบฅเบฑเบ”เบ—เบตเปˆเบšเปเปˆเบกเบตเบเปเบฒเบ™เบปเบ”เบ‚เบญเบšเป€เบ‚เบ”เบเปเบฒเบ™เบปเบ”, เปเบฅเบฐเบซเบผเบฑเบ‡เบˆเบฒเบเบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡เบ‚เบญเบ‡เบฅเบฑเบ”เปƒเบ™เป€เบ„เบทเปˆเบญเบ‡เบˆเบฑเบเบ‚เบญเบ‡เบฅเบฑเบ”เบ—เบตเปˆเบšเปเปˆเบกเบตเบเปเบฒเบ™เบปเบ”, เปƒเบŠเป‰เบชเบนเบ”เบเบฒเบ™เบ„เบดเบ”เป„เบฅเปˆเบ—เบตเปˆเป€เบงเบฅเบฒเบ›เบฐเบ•เบดเบšเบฑเบ”เปเบกเปˆเบ™เบ‚เบถเป‰เบ™เบเบฑเบšเบชเบฒเบเบ—เบตเปˆเบเบปเบ‡เบเบฑเบ™.

เบฅเบฒเบเบฅเบฐเบญเบฝเบ”เบ‚เบญเบ‡เบเบฒเบ™เบขเบธเบ” Cloudflare เปƒเบ™เบงเบฑเบ™เบ—เบต 2 เบเปเบฅเบฐเบเบปเบ” 2019

เบงเบดเบ—เบตเบเบฒเบ™เบ‚เบฝเบ™เป‚เบ›เบฅเปเบเบฅเบก
เบชเบนเบ”เบเบฒเบ™เบ„เบดเบ”เป„เบฅเปˆเบเบฒเบ™เบŠเบญเบเบซเบฒเปเบšเบšเบ›เบปเบเบเบฐเบ•เบด
Ken Thompson

Bell Telephone Laboratories, Inc., Murray Hill, New Jersey

เบกเบฑเบ™เบญเบฐเบ—เบดเบšเบฒเบเบงเบดเบ—เบตเบเบฒเบ™เบ„เบปเป‰เบ™เบซเบฒเบ•เบปเบงเบญเบฑเบเบชเบญเบ™เบชเบฐเป€เบžเบฒเบฐเปƒเบ™เบ‚เปเป‰เบ„เบงเบฒเบกเปเบฅเบฐเบ›เบถเบเบชเบฒเบซเบฒเบฅเบทเบเปˆเบฝเบงเบเบฑเบšเบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบงเบดเบ—เบตเบเบฒเบ™เบ™เบตเป‰เปƒเบ™เบฎเบนเบšเปเบšเบš compiler. compiler เป€เบญเบปเบฒเบเบฒเบ™เบชเบฐเปเบ”เบ‡เบญเบญเบเบ›เบปเบเบเบฐเบ•เบดเป€เบ›เบฑเบ™เบฅเบฐเบซเบฑเบ”เปเบซเบผเปˆเบ‡เปเบฅเบฐเบœเบฐเบฅเบดเบ”เป‚เบ„เบ‡เบเบฒเบ™ IBM 7094 เป€เบ›เบฑเบ™เบฅเบฐเบซเบฑเบ”เบงเบฑเบ”เบ–เบธ. เป‚เบ›เบฃเปเบเบกเบงเบฑเบ”เบ–เบธเป€เบญเบปเบฒเบเบฒเบ™เบ›เป‰เบญเบ™เบ‚เปเป‰เบกเบนเบ™เปƒเบ™เบฎเบนเบšเปเบšเบšเบ‚เบญเบ‡เบ‚เปเป‰เบ„เบงเบฒเบกเบ„เบปเป‰เบ™เบซเบฒ เปเบฅเบฐเบชเบปเปˆเบ‡เบชเบฑเบ™เบเบฒเบ™เปเบ•เปˆเบฅเบฐเบ„เบฑเป‰เบ‡เบ—เบตเปˆเบชเบฒเบเบ‚เบญเบ‡เบ‚เปเป‰เบ„เบงเบฒเบกเบ–เบทเบเบˆเบฑเบšเบ„เบนเปˆเบเบฑเบšเบเบฒเบ™เบชเบฐเปเบ”เบ‡เบœเบปเบ™เบ›เบปเบเบเบฐเบ•เบด. เบšเบปเบ”เบ„เบงเบฒเบกเปƒเบซเป‰เบ•เบปเบงเบขเปˆเบฒเบ‡, เบšเบฑเบ™เบซเบฒเปเบฅเบฐเบงเบดเบ—เบตเปเบเป‰เป„เบ‚.

เบฅเบฐเบšเบปเบšเบงเบดเป€เบ„เบฒเบฐ
เบชเบนเบ”เบเบฒเบ™เบ„เบดเบ”เป„เบฅเปˆเบเบฒเบ™เบ„เบปเป‰เบ™เบซเบฒเบ—เบตเปˆเบœเปˆเบฒเบ™เบกเบฒเบชเบปเปˆเบ‡เบœเบปเบ™เปƒเบซเป‰ backtracking เบ–เป‰เบฒเบเบฒเบ™เบ„เบปเป‰เบ™เบซเบฒเบ—เบตเปˆเบ›เบฐเบชเบปเบšเบœเบปเบ™เบชเปเบฒเป€เบฅเบฑเบ”เบšเบฒเบ‡เบชเปˆเบงเบ™เบšเปเปˆเป„เบ”เป‰เบœเบปเบ™.

เปƒเบ™เบฎเบนเบšเปเบšเบšเบเบฒเบ™เบฅเบงเบšเบฅเบงเบก, เบชเบนเบ”เบเบฒเบ™เบ„เบดเบ”เป„เบฅเปˆเบšเปเปˆเป„เบ”เป‰เป€เบฎเบฑเบ”เบงเบฝเบเบเบฑเบšเบชเบฑเบ™เบเบฒเบฅเบฑเบ. เบกเบฑเบ™เบœเปˆเบฒเบ™เบ„เปเบฒเปเบ™เบฐเบ™เปเบฒเป€เบžเบทเปˆเบญเบฅเบงเบšเบฅเบงเบกเบฅเบฐเบซเบฑเบ”. เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เปเบกเปˆเบ™เป„เบงเบซเบผเบฒเบ - เบซเบผเบฑเบ‡เบˆเบฒเบเบ–เปˆเบฒเบเบ—เบญเบ”เบ‚เปเป‰เบกเบนเบ™เป„เบ›เบ—เบฒเบ‡เป€เบ—เบตเบ‡เบ‚เบญเบ‡เบšเบฑเบ™เบŠเบตเบฅเบฒเบเบŠเบทเปˆเบ›เบฐเบˆเบธเบšเบฑเบ™, เบกเบฑเบ™เบญเบฑเบ”เบ•เบฐเป‚เบ™เบกเบฑเบ”เบŠเบญเบเบซเบฒเบ•เบปเบงเบญเบฑเบเบชเบญเบ™เบ•เบดเบ”เบ•เปเปˆเบเบฑเบ™เบ—เบตเปˆเป€เบ›เบฑเบ™เป„เบ›เป„เบ”เป‰เบ—เบฑเบ‡เบซเบกเบปเบ”เปƒเบ™เบเบฒเบ™เบชเบฐเปเบ”เบ‡เบœเบปเบ™เบ›เบปเบเบเบฐเบ•เบด.
เบเบฒเบ™เบฅเบงเบšเบฅเบงเบกเปเบฅเบฐเบงเบดเบ—เบตเบเบฒเบ™เบ„เบปเป‰เบ™เบซเบฒเปเบกเปˆเบ™เบฅเบงเบกเบขเบนเปˆเปƒเบ™เบ•เบปเบงเปเบเป‰เป„เบ‚เบ‚เปเป‰เบ„เบงเบฒเบกเบ—เบตเปˆเปเบšเปˆเบ‡เบ›เบฑเบ™เป€เบงเบฅเบฒเป€เบ›เบฑเบ™เบเบฒเบ™เบ„เบปเป‰เบ™เบซเบฒเปเบšเบšเบšเปเบฅเบดเบšเบปเบ”. เปเบ™เปˆเบ™เบญเบ™, เบ™เบตเป‰เปเบกเปˆเบ™เบขเบนเปˆเป„เบเบˆเบฒเบเบ„เปเบฒเบฎเป‰เบญเบ‡เบชเบฐเบซเบกเบฑเบเบ”เบฝเบงเบ‚เบญเบ‡เบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบ„เบปเป‰เบ™เบซเบฒเบ”เบฑเปˆเบ‡เบเปˆเบฒเบง. เบ•เบปเบงเบขเปˆเบฒเบ‡, เบ•เบปเบงเปเบ›เบ‚เบญเบ‡ algorithm เบ™เบตเป‰เบ–เบทเบเบ™เปเบฒเปƒเบŠเป‰เป€เบ›เบฑเบ™เบเบฒเบ™เบ„เบปเป‰เบ™เบซเบฒเบชเบฑเบ™เบเบฒเบฅเบฑเบเปƒเบ™เบ•เบฒเบ•เบฐเบฅเบฒเบ‡เปƒเบ™ assembler.
เบกเบฑเบ™เบชเบปเบกเบกเบธเบ”เบงเปˆเบฒเบœเบนเป‰เบญเปˆเบฒเบ™เบˆเบฐเบ„เบธเป‰เบ™เป€เบ„เบตเบเบเบฑเบšเบเบฒเบ™เบชเบฐเปเบ”เบ‡เบญเบญเบเบ›เบปเบเบเบฐเบ•เบดเปเบฅเบฐเบžเบฒเบชเบฒเบเบฒเบ™เบ‚เบฝเบ™เป‚เบ›เบผเปเบเบผเบกเบ„เบญเบกเบžเบดเบงเป€เบ•เบต IBM 7094.

เบœเบนเป‰เบชเบฑเบ‡เบฅเบงเบก
compiler เบ›เบฐเบเบญเบšเบ”เป‰เบงเบเบชเบฒเบกเบ‚เบฑเป‰เบ™เบ•เบญเบ™เบ—เบตเปˆเป€เบฎเบฑเบ”เบงเบฝเบเบ‚เบฐเบซเบ™เบฒเบ™. เบ‚เบฑเป‰เบ™เบ•เบญเบ™เบ—เปเบฒเบญเบดเบ”เปเบกเปˆเบ™เบเบฒเบ™เบเบฑเปˆเบ™เบ•เบญเบ‡ syntax, เป€เบŠเบดเปˆเบ‡เบญเบฐเบ™เบธเบเบฒเบ”เปƒเบซเป‰เบžเบฝเบ‡เปเบ•เปˆ syntactically เปเบเป‰เป„เบ‚เบเบฒเบ™เบชเบฐเปเบ”เบ‡เบญเบญเบเบ›เบปเบเบเบฐเบ•เบดเบœเปˆเบฒเบ™. เบ‚เบฑเป‰เบ™เบ•เบญเบ™เบ™เบตเป‰เบเบฑเบ‡เปƒเบชเปˆเบ•เบปเบงเบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™ "ยท" เป€เบžเบทเปˆเบญเปƒเบซเป‰เบเบปเบ‡เบเบฑเบšเบ„เปเบฒเป€เบงเบปเป‰เบฒเบ›เบปเบเบเบฐเบ•เบด. เปƒเบ™เบ‚เบฑเป‰เบ™เบ•เบญเบ™เบ—เบตเบชเบญเบ‡, เบเบฒเบ™เบชเบฐเปเบ”เบ‡เบญเบญเบเบ›เบปเบเบเบฐเบ•เบดเบˆเบฐเบ–เบทเบเบ›เปˆเบฝเบ™เป€เบ›เบฑเบ™เปเบšเบšเบŸเบญเบก postfix. เปƒเบ™เบ‚เบฑเป‰เบ™เบ•เบญเบ™เบ—เบตเบชเบฒเบก, เบฅเบฐเบซเบฑเบ”เบงเบฑเบ”เบ–เบธเบ–เบทเบเบชเป‰เบฒเบ‡เบ‚เบทเป‰เบ™. 2 เบ‚เบฑเป‰เบ™เบ•เบญเบ™เบ—เปเบฒเบญเบดเบ”เปเบกเปˆเบ™เป€เบซเบฑเบ™เป„เบ”เป‰เบŠเบฑเบ”เป€เบˆเบ™, เปเบฅเบฐเบžเบงเบเป€เบฎเบปเบฒเบˆเบฐเบšเปเปˆเบขเบนเปˆเบเบฑเบšเบžเบงเบเบกเบฑเบ™.

เบšเบปเบ”เบ„เบงเบฒเบกเบ‚เบญเบ‡ Thompson เบšเปเปˆเป„เบ”เป‰เป€เบงเบปเป‰เบฒเบเปˆเบฝเบงเบเบฑเบšเป€เบ„เบทเปˆเบญเบ‡เบˆเบฑเบเบ‚เบญเบ‡เบฅเบฑเบ” finite เบ—เบตเปˆเบšเปเปˆเบ–เบทเบเบเปเบฒเบ™เบปเบ”, เปเบ•เปˆเบกเบฑเบ™เบญเบฐเบ—เบดเบšเบฒเบเบงเบดเบ—เบตเบเบฒเบ™เบเปเบฒเบ™เบปเบ”เป€เบงเบฅเบฒเป€เบชเบฑเป‰เบ™เป„เบ”เป‰เบ”เบตเปเบฅเบฐเบ™เปเบฒเบชเบฐเป€เบซเบ™เบตเป‚เบ„เบ‡เบเบฒเบ™ ALGOL-60 เบ—เบตเปˆเบชเป‰เบฒเบ‡เบฅเบฐเบซเบฑเบ”เบžเบฒเบชเบฒเบ›เบฐเบเบญเบšเบชเปเบฒเบฅเบฑเบš IBM 7094. เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เปเบกเปˆเบ™ tricky, เปเบ•เปˆเปเบ™เบงเบ„เบงเบฒเบกเบ„เบดเบ”เปเบกเปˆเบ™เบ‡เปˆเบฒเบเบ”เบฒเบเบซเบผเบฒเบ.

เบฅเบฒเบเบฅเบฐเบญเบฝเบ”เบ‚เบญเบ‡เบเบฒเบ™เบขเบธเบ” Cloudflare เปƒเบ™เบงเบฑเบ™เบ—เบต 2 เบเปเบฅเบฐเบเบปเบ” 2019

เป€เบชเบฑเป‰เบ™เบ—เบฒเบ‡เบ„เบปเป‰เบ™เบซเบฒเปƒเบ™เบ›เบฐเบˆเบธเบšเบฑเบ™. เบกเบฑเบ™เบ–เบทเบเบชเบฐเปเบ”เบ‡เป‚เบ”เบเป„เบญเบ„เบญเบ™ โŠ• เบ—เบตเปˆเบกเบตเบเบฒเบ™เบ›เป‰เบญเบ™เบ‚เปเป‰เบกเบนเบ™เปœเบถเปˆเบ‡เบญเบฑเบ™ เปเบฅเบฐเบชเบญเบ‡เบœเบปเบ™เป„เบ”เป‰เบฎเบฑเบš.
เบฎเบนเบšเบ—เบต 1 เบชเบฐเปเบ”เบ‡เบซเบ™เป‰เบฒเบ—เบตเปˆเบ‚เบญเบ‡เบ‚เบฑเป‰เบ™เบ•เบญเบ™เบเบฒเบ™เบฅเบงเบšเบฅเบงเบกเบ—เบตเบชเบฒเบกเป€เบกเบทเปˆเบญเบ›เปˆเบฝเบ™เบ•เบปเบงเบขเปˆเบฒเบ‡เบเบฒเบ™เบชเบฐเปเบ”เบ‡เบญเบญเบเบ›เบปเบเบเบฐเบ•เบด. เบชเบฒเบกเบ•เบปเบงเบญเบฑเบเบชเบญเบ™เบ—เปเบฒเบญเบดเบ”เปƒเบ™เบ•เบปเบงเบขเปˆเบฒเบ‡เปเบกเปˆเบ™ a, b, c, เปเบฅเบฐเปเบ•เปˆเบฅเบฐเบ•เบปเบงเบชเป‰เบฒเบ‡ stack entry S[i] เปเบฅเบฐเบŠเปˆเบญเบ‡เบ‚เปเป‰เบกเบนเบ™ NNODE.

NNODE เป„เบ›เบซเบฒเบฅเบฐเบซเบฑเบ”เบ—เบตเปˆเบกเบตเบขเบนเปˆเป€เบžเบทเปˆเบญเบชเป‰เบฒเบ‡เบเบฒเบ™เบชเบฐเปเบ”เบ‡เบญเบญเบเบ›เบปเบเบเบฐเบ•เบดเบœเบปเบ™เป„เบ”เป‰เบฎเบฑเบšเปƒเบ™เบเบฒเบ™เป€เบ‚เบปเป‰เบฒ stack เบ”เบฝเบง (เป€เบšเบดเปˆเบ‡เบฎเบนเบš 5)

เบ™เบตเป‰เปเบกเปˆเบ™เบชเบดเปˆเบ‡เบ—เบตเปˆเบชเบฐเปเบ”เบ‡เบญเบญเบเป€เบ›เบฑเบ™เบ›เบปเบเบเบฐเบ•เบด .*.*=.*, เบ–เป‰เบฒเบ—เปˆเบฒเบ™เบˆเบดเบ™เบ•เบฐเบ™เบฒเบเบฒเบ™เบกเบฑเบ™เบ„เบทเบเบฑเบšเบฎเบนเบšเบžเบฒเบšเบˆเบฒเบเบšเบปเบ”เบ„เบงเบฒเบกเบ‚เบญเบ‡ Thompson.

เบฅเบฒเบเบฅเบฐเบญเบฝเบ”เบ‚เบญเบ‡เบเบฒเบ™เบขเบธเบ” Cloudflare เปƒเบ™เบงเบฑเบ™เบ—เบต 2 เบเปเบฅเบฐเบเบปเบ” 2019

เปƒเบ™เบฎเบนเบš. 0 เบกเบตเบซเป‰เบฒเบฅเบฑเบ”เบ—เบตเปˆเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบˆเบฒเบ 0, เปเบฅเบฐ 3 เบงเบปเบ‡เบˆเบญเบ™เบ—เบตเปˆเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบˆเบฒเบเบฅเบฑเบ” 1, 2 เปเบฅเบฐ 3. เบชเบฒเบกเบงเบปเบ‡เบˆเบญเบ™เบ™เบตเป‰เป€เบ—เบปเปˆเบฒเบเบฑเบšเบชเบฒเบก .* เปƒเบ™โ€‹เบเบฒเบ™โ€‹เบชเบฐโ€‹เปเบ”เบ‡โ€‹เบญเบญเบโ€‹เป€เบ›เบฑเบ™โ€‹เบ›เบปเบโ€‹เบเบฐโ€‹เบ•เบดโ€‹. เบฎเบนเบšเป„เบ‚เปˆ 3 เบญเบฑเบ™เบ—เบตเปˆเบกเบตเบˆเบธเบ”เบเบปเบ‡เบเบฑเบ™เบเบฑเบšเบชเบฑเบ™เบเบฒเบฅเบฑเบเบญเบฑเบ™เบ”เบฝเบง. เบฎเบนเบšเป„เบ‚เปˆเบ—เบตเปˆเบกเบตเบชเบฑเบ™เบเบฒเบฅเบฑเบ = เบเบปเบ‡เบเบฑเบšเบ•เบปเบงเบญเบฑเบเบชเบญเบ™ =. เบฅเบฑเบ” 4 เปเบกเปˆเบ™เบชเบธเบ”เบ—เป‰เบฒเบ. เบ–เป‰เบฒเบžเบงเบเป€เบฎเบปเบฒเบšเบฑเบ™เบฅเบธเบกเบฑเบ™, เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™เบเบฒเบ™เบชเบฐเปเบ”เบ‡เบญเบญเบเบ›เบปเบเบเบฐเบ•เบดเปเบกเปˆเบ™เบเบปเบ‡เบเบฑเบ™.

เป€เบžเบทเปˆเบญเป€เบšเบดเปˆเบ‡เบงเปˆเบฒเปเบœเบ™เบงเบฒเบ”เบฅเบฑเบ”เบ”เบฑเปˆเบ‡เบเปˆเบฒเบงเบชเบฒเบกเบฒเบ”เปƒเบŠเป‰เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบˆเบฑเบšเบ„เบนเปˆเบเบฒเบ™เบชเบฐเปเบ”เบ‡เบญเบญเบเบ›เบปเบเบเบฐเบ•เบดเป„เบ”เป‰เปเบ™เบงเปƒเบ” .*.*=.*, เบžเบงเบเป€เบฎเบปเบฒเบˆเบฐเป€เบšเบดเปˆเบ‡เบเบฒเบ™เบˆเบฑเบšเบ„เบนเปˆเบชเบฐเบ•เบฃเบดเบ‡ x=x. เป‚เบ„เบ‡เบเบฒเบ™เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบˆเบฒเบเบฅเบฑเบ” 0, เบ”เบฑเปˆเบ‡เบ—เบตเปˆเบชเบฐเปเบ”เบ‡เบขเบนเปˆเปƒเบ™เบฎเบนเบš. 1.

เบฅเบฒเบเบฅเบฐเบญเบฝเบ”เบ‚เบญเบ‡เบเบฒเบ™เบขเบธเบ” Cloudflare เปƒเบ™เบงเบฑเบ™เบ—เบต 2 เบเปเบฅเบฐเบเบปเบ” 2019

เป€เบžเบทเปˆเบญเปƒเบซเป‰ algorithm เบ™เบตเป‰เป€เบฎเบฑเบ”เบงเบฝเบ, เป€เบ„เบทเปˆเบญเบ‡เบˆเบฑเบเบ‚เบญเบ‡เบฅเบฑเบ”เบˆเบฐเบ•เป‰เบญเบ‡เบขเบนเปˆเปƒเบ™เบซเบผเบฒเบเบฅเบฑเบ”เบžเป‰เบญเบกเป†เบเบฑเบ™. เป€เบ„เบทเปˆเบญเบ‡เบเปเบฒเบ™เบปเบ”เบ‚เบญเบšเป€เบ‚เบ”เบ—เบตเปˆเบšเปเปˆเบเปเบฒเบ™เบปเบ”เบˆเบฐเป€เบฎเบฑเบ”เบเบฒเบ™เบซเบฑเบ™เบ›เปˆเบฝเบ™เบ—เบตเปˆเป€เบ›เบฑเบ™เป„เบ›เป„เบ”เป‰เบ—เบฑเบ‡เบซเบกเบปเบ”เบžเป‰เบญเบกเป†เบเบฑเบ™.

เบเปˆเบญเบ™เบ—เบตเปˆเบกเบฑเบ™เบˆเบฐเบกเบตเป€เบงเบฅเบฒเบ—เบตเปˆเบˆเบฐเบญเปˆเบฒเบ™เบ‚เปเป‰เบกเบนเบ™เบเบฒเบ™เบ›เป‰เบญเบ™เบ‚เปเป‰เบกเบนเบ™, เบกเบฑเบ™เบˆเบฐเป€เบ‚เบปเป‰เบฒเป„เบ›เปƒเบ™เบ—เบฑเบ‡เบชเบญเบ‡เบฅเบฑเบ”เบ—เปเบฒเบญเบดเบ” (1 เปเบฅเบฐ 2), เบ”เบฑเปˆเบ‡เบ—เบตเปˆเบชเบฐเปเบ”เบ‡เบขเบนเปˆเปƒเบ™เบฎเบนเบš. 2.

เบฅเบฒเบเบฅเบฐเบญเบฝเบ”เบ‚เบญเบ‡เบเบฒเบ™เบขเบธเบ” Cloudflare เปƒเบ™เบงเบฑเบ™เบ—เบต 2 เบเปเบฅเบฐเบเบปเบ” 2019

เปƒเบ™เบฎเบนเบš. 2 เบชเบฐเปเบ”เบ‡เปƒเบซเป‰เป€เบซเบฑเบ™เบชเบดเปˆเบ‡เบ—เบตเปˆเป€เบเบตเบ”เบ‚เบทเป‰เบ™เป€เบกเบทเปˆเบญเบฅเบฒเบงเป€เบšเบดเปˆเบ‡เบ„เบฑเป‰เบ‡เบ—เปเบฒเบญเบดเบ” x ะฒ x=x. x เบชเบฒเบกเบฒเบ”เบชเป‰เบฒเบ‡เปเบœเบ™เบ—เบตเปˆเป„เบ›เบซเบฒเบˆเบธเบ”เบชเบนเบ‡เบชเบธเบ”, เป„เบ›เบˆเบฒเบเบฅเบฑเบ” 1 เปเบฅเบฐเบเบฑเบšเบ„เบทเบ™เป„เบ›เบซเบฒเบฅเบฑเบ” 1. เบซเบผเบท x เบชเบฒเบกเบฒเบ”เบชเป‰เบฒเบ‡เปเบœเบ™เบ—เบตเปˆเป„เบ›เบซเบฒเบˆเบธเบ”เบ‚เป‰เบฒเบ‡เบฅเบธเปˆเบกเบ™เบตเป‰, เบเบฒเบ™เป€เบ„เบทเปˆเบญเบ™เบเป‰เบฒเบเบˆเบฒเบเบฅเบฑเบ” 2 เปเบฅเบฐเบเบฑเบšเบ„เบทเบ™เป„เบ›เบšเปˆเบญเบ™เบฅเบฑเบ” 2.

เบซเบผเบฑเบ‡เบˆเบฒเบเบˆเบฑเบšเบ„เบนเปˆเบ—เปเบฒเบญเบดเบ” x ะฒ x=x เบžเบงเบเป€เบฎเบปเบฒเบเบฑเบ‡เบขเบนเปˆเปƒเบ™เบฅเบฑเบ” 1 เปเบฅเบฐ 2. เบžเบงเบเป€เบฎเบปเบฒเบšเปเปˆเบชเบฒเบกเบฒเบ”เป€เบ‚เบปเป‰เบฒเบซเบฒเบฅเบฑเบ” 3 เบซเบผเบท 4 เป„เบ”เป‰เป€เบžเบฒเบฐเบงเปˆเบฒเบžเบงเบเป€เบฎเบปเบฒเบ•เป‰เบญเบ‡เบเบฒเบ™เบ•เบปเบงเปœเบฑเบ‡เบชเบท. =.

เบชเบนเบ”เบเบฒเบ™เบ„เบดเบ”เป„เบฅเปˆเบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™เบžเบดเบˆเบฒเบฅเบฐเบ™เบฒ = ะฒ x=x. เป€เบŠเบฑเปˆเบ™เบ”เบฝเบงเบเบฑเบ™เบเบฑเบš x เบเปˆเบญเบ™, เบกเบฑเบ™เบชเบฒเบกเบฒเบ”เบ–เบทเบเบˆเบฑเบšเบ„เบนเปˆเบเบฑเบšเบ—เบฑเบ‡เบชเบญเบ‡ loops เป€เบ—เบดเบ‡เบชเบธเบ”เบˆเบฒเบเบฅเบฑเบ” 1 เบซเบฒเบฅเบฑเบ” 1 เบซเบผเบทเบˆเบฒเบเบฅเบฑเบ” 2 เบซเบฒเบฅเบฑเบ” 2, เปเบ•เปˆเบชเบนเบ”เบเบฒเบ™เบ„เบดเบ”เป„เบฅเปˆเบชเบฒเบกเบฒเบ”เบˆเบฑเบšเบ„เบนเปˆเบ•เบปเบงเบซเบ™เบฑเบ‡เบชเบทเป„เบ”เป‰. = เปเบฅเบฐเบเป‰เบฒเบเบˆเบฒเบเบฅเบฑเบ” 2 เป„เบ›เบฅเบฑเบ” 3 (เปเบฅเบฐเบ—เบฑเบ™เบ—เบต 4). เบ™เบตเป‰เปเบกเปˆเบ™เบชเบฐเปเบ”เบ‡เบขเบนเปˆเปƒเบ™เบฎเบนเบš. 3.

เบฅเบฒเบเบฅเบฐเบญเบฝเบ”เบ‚เบญเบ‡เบเบฒเบ™เบขเบธเบ” Cloudflare เปƒเบ™เบงเบฑเบ™เบ—เบต 2 เบเปเบฅเบฐเบเบปเบ” 2019

เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™, algorithm เบเป‰เบฒเบเป„เบ›เบญเบฑเบ™เบชเบธเบ”เบ—เป‰เบฒเบ x ะฒ x=x. เบˆเบฒเบเบฅเบฑเบ” 1 เปเบฅเบฐ 2 เบเบฒเบ™เบซเบฑเบ™เบ›เปˆเบฝเบ™เบญเบฑเบ™เบ”เบฝเบงเบเบฑเบ™เปเบกเปˆเบ™เป€เบ›เบฑเบ™เป„เบ›เป„เบ”เป‰เบเบฑเบšเบฅเบฑเบ” 1 เปเบฅเบฐ 2. เบˆเบฒเบเบฅเบฑเบ” 3. x เบชเบฒโ€‹เบกเบฒเบ”โ€‹เบˆเบฑเบšโ€‹เบ„เบนเปˆโ€‹เบˆเบธเบ”โ€‹เบขเบนเปˆโ€‹เบ—เบฒเบ‡โ€‹เบ‚เบงเบฒโ€‹เปเบฅเบฐโ€‹เบเบฑเบšโ€‹เบ„เบทเบ™โ€‹เป„เบ›โ€‹เบšเปˆเบญเบ™ 3 เบฅเบฑเบ”โ€‹.

เปƒเบ™เบ‚เบฑเป‰เบ™เบ•เบญเบ™เบ™เบตเป‰, เปเบ•เปˆเบฅเบฐเบฅเบฑเบเบชเบฐเบ™เบฐ x=x เบžเบดเบˆเบฒเบฅเบฐเบ™เบฒ, เปเบฅเบฐเบ™เบฑเบšเบ•เบฑเป‰เบ‡เปเบ•เปˆเบžเบงเบเป€เบฎเบปเบฒเป„เบ”เป‰เบกเบฒเบฎเบญเบ”เบฅเบฑเบ” 4, เบเบฒเบ™เบชเบฐเปเบ”เบ‡เบญเบญเบเบ›เบปเบเบเบฐเบ•เบดเบˆเบฐเบเบปเบ‡เบเบฑเบšเบชเบฐเบ•เบฃเบดเบ‡เบ™เบฑเป‰เบ™. เปเบ•เปˆเบฅเบฐเบ•เบปเบงเบฅเบฐเบ„เบญเบ™เบ–เบทเบเบ›เบฐเบกเบงเบ™เบœเบปเบ™เบ„เบฑเป‰เบ‡เบ”เบฝเบง, เบชเบฐเบ™เบฑเป‰เบ™ เบชเบนเบ”เบเบฒเบ™เบ„เบดเบ”เป„เบฅเปˆเบ™เบตเป‰เปเบกเปˆเบ™เป€เบชเบฑเป‰เบ™เบŠเบทเปˆเบ•เบฒเบกเบ„เบงเบฒเบกเบเบฒเบงเบ‚เบญเบ‡เบชเบฒเบเบ›เป‰เบญเบ™เบ‚เปเป‰เบกเบนเบ™. เปเบฅเบฐเบšเปเปˆเบกเบต backtracking.

เปเบ™เปˆเบ™เบญเบ™, เบซเบผเบฑเบ‡เบˆเบฒเบเป€เบ–เบดเบ‡เบฅเบฑเบ” 4 (เป€เบกเบทเปˆเบญ algorithm เป„เบ”เป‰เบเบปเบ‡เบเบฑเบ™ x=) เบเบฒเบ™เบชเบฐเปเบ”เบ‡เบญเบญเบเบ›เบปเบเบเบฐเบ•เบดเบ—เบฑเบ‡เบซเบกเบปเบ”เปเบกเปˆเบ™เบเบปเบ‡เบเบฑเบ™, เปเบฅเบฐ algorithm เบญเบฒเบ”เบˆเบฐเบขเบธเบ”เป€เบŠเบปเบฒเป‚เบ”เบเบšเปเปˆเบกเบตเบเบฒเบ™เบžเบดเบˆเบฒเบฅเบฐเบ™เบฒเบกเบฑเบ™เบ—เบฑเบ‡เบซเบกเบปเบ” x.

เบชเบนเบ”เบเบฒเบ™เบ„เบดเบ”เป„เบฅเปˆเบ™เบตเป‰เบ‚เบถเป‰เบ™เบเบฑเบšเบ‚เบฐเปœเบฒเบ”เบ‚เบญเบ‡เบชเบฒเบเป€เบ‚เบปเป‰เบฒ.

เปเบซเบผเปˆเบ‡เบ‚เปเป‰เบกเบนเบ™: www.habr.com

เป€เบžเบตเปˆเบกเบ„เบงเบฒเบกเบ„เบดเบ”เป€เบซเบฑเบ™