10
วิธีแก้ไขการขาดธุรกรรมใน MongoDB?
ฉันรู้ว่ามีคำถามที่คล้ายกันที่นี่ แต่พวกเขามีทั้งบอกฉันเปลี่ยนกลับไปใช้ระบบ RDBMS ปกติถ้าผมต้องทำธุรกรรมหรือใช้การดำเนินงานของอะตอมหรือสองเฟสกระทำ ทางออกที่สองดูเหมือนจะเป็นทางเลือกที่ดีที่สุด ข้อที่สามฉันไม่ต้องการติดตามเพราะดูเหมือนว่ามีหลายสิ่งผิดปกติและฉันไม่สามารถทดสอบได้ในทุกด้าน ฉันมีเวลาในการปรับโครงสร้างโครงการของฉันอีกครั้งเพื่อดำเนินการปรมาณู ฉันไม่ทราบว่าสิ่งนี้มาจากมุมมองที่ จำกัด ของฉัน (ฉันเพิ่งทำงานกับฐานข้อมูล SQL จนถึงปัจจุบัน) หรือไม่สามารถทำได้จริง ๆ หรือไม่ เราต้องการทดสอบนำร่อง MongoDB ที่ บริษัท ของเรา เราเลือกโครงการง่ายๆ - เกตเวย์ SMS ช่วยให้ซอฟต์แวร์ของเราส่งข้อความ SMS ไปยังเครือข่ายเซลลูลาร์และเกตเวย์ทำงานได้ไม่ดี: สื่อสารกับผู้ให้บริการผ่านโปรโตคอลการสื่อสารที่แตกต่างกัน เกตเวย์ยังจัดการการเรียกเก็บเงินของข้อความด้วย ลูกค้าทุกคนที่สมัครใช้บริการจะต้องซื้อเครดิตบ้าง ระบบจะลดยอดคงเหลือของผู้ใช้โดยอัตโนมัติเมื่อมีการส่งข้อความและปฏิเสธการเข้าถึงหากยอดเงินไม่เพียงพอ และเนื่องจากเราเป็นลูกค้าของผู้ให้บริการ SMS บุคคลที่สามเราจึงอาจมียอดคงเหลือเป็นของตนเอง เราต้องติดตามสิ่งเหล่านั้นด้วย ฉันเริ่มคิดว่าฉันสามารถจัดเก็บข้อมูลที่ต้องการด้วย MongoDB ได้อย่างไรหากฉันลดความซับซ้อนลง (การเรียกเก็บเงินภายนอกการส่ง SMS ที่อยู่ในคิว) มาจากโลก SQL ฉันจะสร้างตารางแยกต่างหากสำหรับผู้ใช้อีกอันหนึ่งสำหรับข้อความ SMS และอีกอันสำหรับจัดเก็บธุรกรรมที่เกี่ยวข้องกับยอดคงเหลือของผู้ใช้ สมมติว่าฉันสร้างคอลเลกชันแยกสำหรับทุกคนใน MongoDB ลองนึกภาพงานส่ง …
139
mongodb
transactions