প্রকল্প সম্পর্কে
CWIST (C Web development Is Still Trustworthy) একটি C17 ওয়েব ফ্রেমওয়ার্ক এবং অ্যাপ্লিকেশন সার্ভার, যা একটি সম্পূর্ণ নেটওয়ার্কিং স্ট্যাক বান্ডেল করে: HTTP/1.1, HTTP/2, QUIC-এর উপর HTTP/3, WebSocket, WebTransport এবং X25519MLKEM768 ব্যবহার করে হাইব্রিড পোস্ট-কোয়ান্টাম TLS। এটি একটি এমবেডেড SQLite ORM, Nuke DB নামে একটি ইন-মেমোরি রিড-অপ্টিমাইজড ডেটাবেস ইঞ্জিন এবং ওয়্যার-প্রোটোকল ফিঙ্গারপ্রিন্টিংয়ের মাধ্যমে PostgreSQL, MySQL এবং MariaDB-এর স্বয়ংক্রিয় শনাক্তকরণ প্রদান করে।
প্রকল্পটি এনভায়রনমেন্ট ভেরিয়েবল দ্বারা নির্বাচনযোগ্য দুটি এক্সিকিউশন মডেল অফার করে। C1M রিঅ্যাক্টর মোড উচ্চ-কনকারেন্সি ইভেন্ট-চালিত সার্ভিংয়ের জন্য Linux-এ io_uring ব্যবহার করে (epoll/kqueue ফলব্যাক সহ), অন্যদিকে ক্লাসিক পুল মোড সাধারণ রিকোয়েস্ট ওয়ার্কলোডে কম লেটেন্সির জন্য প্রতিটি সংযোগকে নিজস্ব থ্রেড বরাদ্দ করে। README-তে Axum, Gin এবং Spring Boot-এর বিপরীতে বেঞ্চমার্ক তুলনা অন্তর্ভুক্ত রয়েছে, যেখানে থ্রুপুট, লেটেন্সি পারসেন্টাইল, মেমোরি ব্যবহার এবং কনটেক্সট সুইচ কভার করা হয়েছে, এই সতর্কতা সহ যে ফলাফল CI রানার CPU এবং লোড প্রোফাইলের উপর নির্ভর করে।
CWIST প্রজেক্ট স্ক্যাফোল্ডিং, ডেভেলপমেন্টের সময় হট রিলোড, Doxygen অ্যানোটেশন থেকে OpenAPI জেনারেশন এবং protobuf/gRPC কোড জেনারেশনের জন্য একটি কমান্ড-লাইন টুল সরবরাহ করে। এটি gRPC ইউনারি এবং স্ট্রিমিং রুট, হেলথ এবং রিফ্লেকশন সার্ভিস, রিট্রাই এবং লোড ব্যালেন্সিং সমর্থন করে। ফ্রেমওয়ার্কটিতে Express-স্টাইল প্যারামিটার সহ রাউটিং, মিডলওয়্যার, স্ট্রাকচার্ড লগিং, মেট্রিক্স এবং হেলথ এন্ডপয়েন্ট, রেট লিমিটিং, HTML/CSS/টেমপ্লেট রেন্ডারিং এবং JSON ইউটিলিটিও অন্তর্ভুক্ত রয়েছে।
make দিয়ে সোর্স থেকে বিল্ড করে বা Homebrew ট্যাপের মাধ্যমে ইনস্টলেশন করা যায়। BoringSSL, lsquic, libttak এবং SQLite3-এর মতো ডিপেন্ডেন্সিগুলো ভেন্ডর করা হয়েছে এবং স্ট্যাটিক লাইব্রেরিটি সরাসরি বা pkg-config-এর মাধ্যমে লিঙ্ক করা যায়। প্ল্যাটফর্ম সমর্থন Linux, macOS এবং BSD কভার করে।
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.