ความเร็วและประสิทธิภาพเป็นจุดเด่นของความเป็นเลิศในสภาพแวดล้อมทางธุรกิจที่รวดเร็วในปัจจุบัน
องค์กรที่เข้าไปพัวพันกับกระบวนการแบบใช้คนและเข้มงวดนั้นต้องแบกรับน้ำหนักของสถาปัตยกรรมที่ยุ่งยากและจะถูกทิ้งให้อยู่อย่างราบเรียบตลอดไปเมื่อโอกาสทางธุรกิจผ่านพ้นไป
แต่ผู้ที่มีกระบวนการอัตโนมัติจะมีประสิทธิผลมากขึ้น คล่องตัวมากขึ้น และมีโอกาสมากขึ้น เพื่อสัมผัสกับการเติบโต และนั่นเป็นสาเหตุที่องค์กรต้องการระบบการจัดการกฎธุรกิจแบบกระจาย (DBRMS)
กำลังมองหาการสร้างผลกระทบต่อชุมชนธุรกิจ Visrut Kohli ได้สร้าง DBRMS ของตัวเองที่ชื่อ Bonsai ด้วยการใช้ Redis บอนไซรับประกันผู้ใช้ว่าแอปพลิเคชันที่สามารถทำให้กระบวนการเป็นอัตโนมัติในแบบเรียลไทม์ เพิ่มระดับการผลิตสูงสุดโดยลดโอกาสที่ความล่าช้าจะเกิดขึ้น
มาดูกันว่าแอปพลิเคชั่นนี้ถูกสร้างขึ้นมาอย่างไร แต่ก่อนที่เราจะไปต่อ เราอยากจะชี้ให้เห็นว่าเรายังมีแอพที่เป็นนวัตกรรมใหม่ๆ มากมายให้คุณได้ลองใช้บน Redis Launchpad
ดังนั้นหากคุณชอบโพสต์นี้ อย่าลืมเปิดดู!
วิธีสร้างระบบการจัดการกฎธุรกิจแบบกระจายโดยใช้ Redis
- คุณจะสร้างอะไร
- คุณต้องการอะไร
- สถาปัตยกรรม
- เริ่มต้นใช้งาน
- การตั้งค่าแบ็กเอนด์
- การตั้งค่าส่วนหน้า
- วิธีการทำงาน
- วิธีใช้งานคุณลักษณะต่างๆ
1. คุณจะสร้างอะไร
คุณจะสร้างแพลตฟอร์มการจัดการกฎธุรกิจแบบกระจายที่จะช่วยให้ธุรกิจต่างๆ สร้าง จัดการ และใช้กฎเกณฑ์ทางธุรกิจที่ปรับขนาดได้ทั่วทั้งองค์กร งานทางธุรกิจหลายอย่างสามารถทำได้โดยอัตโนมัติและเพิ่มทรัพยากรเพิ่มเติมที่สามารถนำไปลงทุนในที่อื่นในธุรกิจได้
แอปพลิเคชันนี้จะช่วยให้องค์กรสามารถระบุ ปรับใช้ และจัดการกฎการตัดสินใจทางธุรกิจและตรรกะในการตัดสินใจ เพื่อให้แอปสามารถตัดสินใจได้อย่างชาญฉลาดอย่างต่อเนื่องด้วยความรวดเร็วและปราศจากการแทรกแซงของมนุษย์
ด้านล่างนี้ เราจะเน้นว่าองค์ประกอบใดบ้างที่คุณจำเป็นต้องใช้ในการทำให้แอปพลิเคชันนี้มีชีวิต รวมทั้งแนะนำคุณผ่านแต่ละขั้นตอนของกระบวนการติดตั้งใช้งาน
พร้อมที่จะเริ่มต้นหรือยัง
ตกลงขอตรงเข้าไป
2. คุณต้องการอะไร
- หลาม :ใช้เป็นภาษาโปรแกรมที่มีประสิทธิภาพสูง
- เรดิส :ที่เก็บข้อมูลในหน่วยความจำเพื่อนำเข้า ประมวลผล และวิเคราะห์ข้อมูลแบบเรียลไทม์ด้วยเวลาแฝงที่ต่ำกว่ามิลลิวินาที
- RedisJSON :ใช้เป็นโมดูลที่ให้การสนับสนุน JSON ใน Redis
- RedisTimeSeries :ใช้เป็นโมดูลที่เพิ่มโครงสร้างข้อมูลอนุกรมเวลาให้กับ Redis
3. สถาปัตยกรรม
4. เริ่มต้นตรวจสอบให้แน่ใจว่าคุณได้เปิดใช้งานฐานข้อมูล Redis Stack:
5. การตั้งค่าส่วนหน้า
เริ่มต้นใช้งานสร้างแอปตอบโต้
โครงการนี้ถูกบูตด้วยแอป Create React
ขั้นตอนที่ 1:โคลนที่เก็บส่วนหน้า
ขั้นตอนที่ 2:ติดตั้งการพึ่งพา
yarn install
ขั้นตอนที่ 3:ใช้สคริปต์ที่มี
ในไดเรกทอรีโครงการ คุณสามารถเรียกใช้สคริปต์ต่อไปนี้:
yarn start
เรียกใช้แอปในโหมดการพัฒนา
เปิด https://localhost:3000 เพื่อดูในเบราว์เซอร์
หน้าจะโหลดซ้ำหากคุณทำการแก้ไขคุณจะเห็นข้อผิดพลาดของผ้าสำลีในคอนโซลด้วย
yarn test
เปิดตัววิ่งทดสอบในโหมดนาฬิกาแบบโต้ตอบ
ดูข้อมูลเพิ่มเติมในส่วนเกี่ยวกับการทำการทดสอบ
yarn build
สร้างแอปสำหรับใช้งานจริงในโฟลเดอร์บิลด์
มันรวมกลุ่ม React อย่างถูกต้องในโหมดใช้งานจริงและปรับบิลด์ให้เหมาะสมเพื่อประสิทธิภาพที่ดีที่สุด
บิลด์ถูกย่อให้เล็กลงและชื่อไฟล์รวมแฮชด้วย
แอปของคุณจะพร้อมสำหรับการใช้งานแล้ว
ดูข้อมูลเพิ่มเติมในส่วนเกี่ยวกับการปรับใช้
yarn eject
หมายเหตุ: นี่เป็นการดำเนินการทางเดียว เมื่อคุณดีดออก คุณจะไม่สามารถย้อนกลับได้!
หากคุณไม่พอใจกับเครื่องมือสร้างและตัวเลือกการกำหนดค่า คุณสามารถนำออกได้ทุกเมื่อ คำสั่งนี้จะลบการพึ่งพาบิลด์เดี่ยวออกจากโปรเจ็กต์ของคุณ
แต่จะคัดลอกไฟล์การกำหนดค่าทั้งหมดและการพึ่งพาสกรรมกริยา (webpack, Babel, ESLint ฯลฯ) ลงในโครงการของคุณแทน เพื่อให้คุณสามารถควบคุมได้อย่างเต็มที่ คำสั่งทั้งหมดยกเว้นการดีดออกจะยังใช้งานได้ แต่จะชี้ไปที่สคริปต์ที่คัดลอกมาเพื่อให้คุณปรับแต่งได้ ณ จุดนี้ คุณเป็นตัวของตัวเอง
คุณไม่จำเป็นต้องใช้การดีดออก ชุดคุณลักษณะที่ดูแลจัดการนี้เหมาะสำหรับการปรับใช้ขนาดเล็กและขนาดกลาง และคุณไม่ควรรู้สึกว่าต้องใช้งานคุณลักษณะนี้ อย่างไรก็ตาม เราเข้าใจดีว่าเครื่องมือนี้จะไม่มีประโยชน์หากคุณไม่สามารถปรับแต่งได้เมื่อพร้อม
ขั้นตอนที่ 4 โคลนเครื่องมือกฎบอนไซ
โคลน git:https://github.com/redis-developer/bonsai
ขั้นตอนที่ 5 ติดตั้งการขึ้นต่อกันของ Python
ขั้นตอนที่ 6 เรียกใช้สคริปต์
6. วิธีการทำงาน
คำหลัก
- เนมสเปซ
- กฎ
- นิติบุคคล
เนมสเปซ
การแยกกฎอย่างมีเหตุผลที่สุดอยู่บนพื้นฐานของเนมสเปซ เนมสเปซเป็นกฎชุดหนึ่งที่ต้องประเมินในชุดข้อมูล ตัวอย่างเช่น ในโพสต์นี้ คุณจะสร้างเนมสเปซสำหรับระบบการจัดการความภักดีและกฎทั้งหมดที่เกี่ยวข้องจะถูกบันทึกไว้ภายใต้เนมสเปซนั้น
- โครงสร้างสำหรับการบันทึกข้อมูลของเราคือ
เนมสเปซคือ:
tax_system.
คำสั่งที่ใช้สร้างเนมสเปซคือ:
เอนทิตี
เอนทิตีหมายถึงอินพุตของเนมสเปซและจะให้ผลลัพธ์หลังจากประเมินกฎที่มีอยู่ในเนมสเปซนั้น
กฎ
คีย์เวิร์ดย่อย
- ภาคแสดง: นี่หมายถึงเงื่อนไขการป้อนข้อมูลสำหรับกฎของคุณ
- ผลลัพธ์: นี่หมายถึงเงื่อนไขผลลัพธ์สำหรับกฎของคุณ
- ตัวดำเนินการ: เรามีโอเปอเรเตอร์ 7 ตัว:
– eq ซึ่งหมายถึง =
– ช่วงซึ่งหมายความว่าค่าควรอยู่ระหว่างช่วงที่กำหนด (ไม่รวมขีด จำกัด บน)
– มีซึ่งหมายความว่าสตริงควรมีค่าอินพุตที่กำหนด
– gt ซึ่งหมายถึงมากกว่าหรือ>
– gte ซึ่งหมายถึงมากกว่าหรือเท่ากับ>=
– lt ซึ่งหมายถึงน้อยกว่า <
– lte ซึ่งหมายถึงน้อยกว่าหรือเท่ากับ <=
ตัวอย่างเช่น เราต้องการสร้างกฎที่กำหนดมูลค่าภาษีของพลเมืองที่อาศัยอยู่ในจังหวัดออนแทรีโอและในเมืองโตรอนโต นอกจากนี้บุคคลนี้จ่ายภาษีเงินได้ 35% ดังนั้นเราจึงมีสองตัวแปร – จังหวัดและเมือง แต่มีอัตราภาษีส่งออกหนึ่งรายการ
ดังนั้นในกรณีนี้ ตัวอย่างหนึ่งของภาคแสดง (อินพุต) ของจังหวัดคือออนแทรีโอสามารถเป็นภาคแสดงที่ประกอบด้วย 4 ส่วน:
กฎแต่ละข้อคือคำสั่งที่ตัดสินว่าอะไรควรเป็นเอาต์พุตของอินพุตเฉพาะ (เอนทิตี) ทุกกฎจะได้รับการบันทึกไว้ในเนมสเปซโดยใช้รูปแบบต่อไปนี้:
Ontario and the city is Toronto the tax rate will be 35.
นี่คือออบเจ็กต์กฎ:
เนมสเปซคือ:
loyalty_systemและ rule_id คือ:
123456.
คำสั่งที่ใช้ในการอัปเดตกฎในเนมสเปซคือ:
คำสั่งที่ใช้รับกฎทั้งหมดในเนมสเปซคือ:
คำสั่งที่ใช้เพื่อรับหนึ่งกฎในเนมสเปซโดย rule_id คือ:
7. วิธีใช้งานคุณลักษณะต่างๆ
วิธีสร้างกฎ
บนหน้าจอหลัก ให้คลิก 'สร้าง'
ถัดไป กรอกข้อมูลในฟิลด์ต่างๆ เพื่อสร้างกฎให้สมบูรณ์การแสดงกฎ
hFPqiFkBy0k>hfpnJff6Op55RJ5wAWLI0z67XDePbY0mDhFPหลังจากสร้างกฎแล้ว คุณจะสามารถเห็นภาพกฎเหล่านั้นได้อย่างง่ายดายในรูปแบบของแผนผังลำดับงาน
การประเมินกฎ
ขั้นตอนการประเมินประกอบด้วยแอตทริบิวต์ทั้งหมดที่ใช้เพื่อสร้างกฎ แอปพลิเคชันมีโค้ดที่ใช้อัลกอริธึมการจับคู่รูปแบบเพื่อดูว่ากฎข้อใดเหมาะกับเอนทิตีมากที่สุด รวมถึงลำดับที่กฎจะถูกดำเนินการการวิเคราะห์กฎ
RedisTimeSeries ช่วยให้คุณเห็นภาพเมตริกทั้งหมด และช่วยให้คุณตัดสินใจโดยใช้ข้อมูลโดยพิจารณาจากประสิทธิภาพของกฎทั้งหมดในเนมสเปซคำสั่งที่ใช้เพื่อแสดงข้อมูลอนุกรมเวลา:
TS.ADD ruleId * 1
บทสรุป:การใช้ข้อมูลแบบเรียลไทม์เพื่อสร้างแพลตฟอร์ม DBRMS ที่เพิ่มประสิทธิภาพ
แพลตฟอร์ม DBRMS สามารถปลดปล่อยพนักงานและธุรกิจจากการต้องทำงานที่ใช้เวลานานและน่าเบื่อซึ่งจำเป็นต่อองค์กร การทำงานเหล่านี้โดยอัตโนมัติผ่านแพลตฟอร์ม DBRMS สามารถฟื้นฟูองค์กรได้อย่างสมบูรณ์โดยการดึงความสนใจของพนักงานแต่ละคนไปสู่งานที่ไม่ธรรมดา
อย่างไรก็ตาม เพื่อให้ระบบ DBRMS มีประสิทธิภาพ จำเป็นต้องขับเคลื่อนโดยฐานข้อมูลแบบเรียลไทม์เพื่อรับประกันประสิทธิภาพในระดับยอดเยี่ยมอย่างสม่ำเสมอ ความล่าช้าเพียงอย่างเดียวอาจทำให้ประสิทธิภาพของกระบวนการหยุดนิ่ง ซึ่งส่งผลเสียต่อความสามารถในการผลิต
ด้วย Redis กฎทางธุรกิจทั้งหมดจึงสามารถจัดการ อัปเดต และบำรุงรักษาในแบบเรียลไทม์ได้ ข้อมูลนี้ช่วยให้คุณได้รับข้อมูลเชิงลึกแบบเรียลไทม์เกี่ยวกับประสิทธิภาพ และทำการตัดสินใจที่นำข้อมูลไปใช้ในทันที ซึ่งจะช่วยให้คุณใช้ประโยชน์จากโอกาสทางธุรกิจได้
หากคุณต้องการค้นพบเพิ่มเติมเกี่ยวกับวิธีการสร้างบอนไซ อย่าลืมดูวิดีโอ YouTube ของ Vishrut ที่นี่ แต่นั่นไม่ใช่ทั้งหมด... เรายังมีแอปพลิเคชันที่เป็นนวัตกรรมมากมายให้คุณลองใช้บน Redis Launchpad
โปรแกรมเมอร์จากทั่วทุกมุมโลกกำลังใช้ความมหัศจรรย์ของ Redis เพื่อสร้างผลกระทบต่อชีวิตประจำวัน
มุ่งหน้าไป เป็นแรงบันดาลใจ. และสนุกไปกับเรดิส
ใครเป็นคนสร้างแอปนี้วิศรุต โกหลี
Vishrut เป็นนักพัฒนาแบบฟูลสแตกและผู้ที่ชื่นชอบข้อมูลซึ่งเชี่ยวชาญใน Python, MATLAB/octave และอัลกอริธึมการเรียนรู้ของเครื่อง หากคุณต้องการติดตามข่าวสารล่าสุดเกี่ยวกับโครงการทั้งหมดของเขา อย่าลืมติดตามเขาบน GitHub