আমার একটা পেজ আছে যেটা পিএইচপিতে করা। যেখানে curl কল করেও কিছু কাজ করা হয় ফলে ঐ পেজ ফুল এক্সিকিউট হতে প্রায়ই এক মিনিটের বেশি সময় লাগে, ফলে ইউজার ভাবে যে হয়তোবা কোন সমস্যা হয়েছে, তাই সে আবার ক্লিক করে। এখন সমস্যা হল যে সেখানে কিছু কন্ডিশন আছে যেটা ঐ ইউজারের জন্য প্রথম ক্লিকে ট্রু হবার কথা থাকলেও ২য় ক্লিকে ফলস হবার কথা। আমি আমার কোডের শুরুতে মাইএসকিউএল

SET AUTOCOMMIT=0;START TRANSACTION;

ব্যবহার করেছি এবং সব এক্সিকিউট হবার পর শেষে দরকার মতো COMMIT বা ROLLBACK কল করেছি। এখন দেখা যাচ্ছে যে যদি একই ইউজার দুইবার রিকোয়েস্ট দেয় তাহলে দুইবারই তার জন্য ট্রু হয়ে যাচ্ছে যেটা ২য় বার ফলস হবার কথা। আমি TABLE LOCK করার কথা চিন্তা করছিলাম, কিন্তু আমি আসলে সঠিক জানি না যে TABLE LOCK কল করলে ঐ টেবিলটা সম্পূর্ণ লক হয় কি না। কারণ ঐ টেবিল অন্য ইউজার ব্যবহার করবে এবং তাদের জন্য ওপেন থাকতে হবে।

এখন আমি জানতে চাচ্ছি যে মাল্টি ইউজারের ট্রানজেকশন হ্যান্ডেল করার সিস্টেম কী?

asked 19 Sep '18, 09:55

mabdsalam12's gravatar image

mabdsalam12
477225

edited 19 Sep '18, 12:47

Mosharraf%20Hosain's gravatar image

Mosharraf Hosain ♦
74618

রিকোয়েস্ট শুরু করার আগেই false করে নিয়ে কাজ শুরু করা যেতে পারে। এতে দ্বিতীয়বার ইউজার ট্রাই করলে ও false এর কারণে কাজ হবে না। যদি প্রথম প্রসেস এ কোন এরর হয় তাহলে আবার false কে true করা যেতে পারে যাতে ইউজার আব্র ট্রাই করতে পারে।

(18 Aug, 17:08) Kaiser Ahmed
Be the first one to answer this question!
toggle preview

Follow this question

By Email:

Once you sign in you will be able to subscribe for any updates here

By RSS:

Answers

Answers and Comments

Markdown Basics

  • *italic* or _italic_
  • **bold** or __bold__
  • link:[text](http://url.com/ "title")
  • image?![alt text](/path/img.jpg "title")
  • numbered list: 1. Foo 2. Bar
  • to add a line break simply add two spaces to where you would like the new line to be.
  • basic HTML tags are also supported

Question tags:

×60
×12

question asked: 19 Sep '18, 09:55

question was seen: 367 times

last updated: 18 Aug, 17:08