[xxhash] অতি দ্রুত গতিতে স্থানীয়ভাবে সাইট সংরক্ষণ করার জন্য cuckooget তৈরি করা হয়েছে [cuckoohash table]
নমস্কার, আমি অযোগ্য।
আমি এটি তৈরি করেছি কারণ স্থানীয়ভাবে একটি সাইটের মিরর তৈরি করার জন্য আমার পছন্দের বৈশিষ্ট্য সহ কিছু বিদ্যমান ছিল না।
httpithub.cturackooget
ভূমিকা
এই সাইটের মিররিং ফাংশনটি HTTrack এর নির্মাতা xavier roche দ্বারা প্রবলভাবে প্রভাবিত।
[xavier roche’s homework](httplog.httrack.c
তার ব্লগ পড়তে গিয়ে আমি নিম্নলিখিত নিবন্ধটি দেখেছি।
[Coucal, Cuckoo-hashing-based hashtable with stash area C library](httplog.httrack.c/uc
কুক্কু হ্যাশ টেবিল সম্পর্কে, কুমাগি-সানের প্রিয় স্লাইড " আপনার অজানা হ্যাশ টেবিলের বিশ্ব" এ একটি সহজবোধ্য ব্যাখ্যা দেওয়া হয়েছে।
আমার একটি ধারণা এসেছিল। এটি সেই অংশ যেখানে, সংঘর্ষের ক্ষেত্রে, এটি "কুক্কুর অভ্যাসের মতো অন্যান্য উপাদানগুলিকে বের করে দেয়"। আমি ভেবেছিলাম যে একটি বিশাল তালিকা এবং নকল হওয়ার সম্ভাবনা থাকলে এই বৈশিষ্ট্যটি ব্যবহার করা যেতে পারে।
ahewfewjjwefawefj
হ্যাশ গণনা
নিরাপত্তার প্রয়োজন না হওয়ায়, আমি সাম্প্রতিক xxhash খুঁজে পেয়েছি এবং এটি অন্তর্ভুক্ত করেছি।
কুক্কু হ্যাশ টেবিলে দুটি প্রকারের প্রয়োজন হওয়ায়, এগুলি xxh32 এবং xxhash64 দিয়ে তৈরি করা হয়েছে।
এছাড়াও, ইগাউ-কুন যেমন উল্লেখ করেছেন, আমি টেবিলের আকারের উপরের সীমাটি স্থির করে রেখেছিলাম, তাই আমি _resize দিয়ে টেবিলের আকার পরিবর্তন করার ব্যবস্থা করেছি।
অনন্য ওজন
গন্তব্য URL সংরক্ষণের অগ্রাধিকার -w --weight বিকল্পের সাথে URL-এ অন্তর্ভুক্ত স্ট্রিংগুলি ক্রমানুসারে বর্ণনা করে পরিবর্তিত হয়।
উদাহরণস্বরূপ, এর মাধ্যমে শ্রেণিবদ্ধ নির্দিষ্টকরণের উপর নির্ভর না করে নমনীয়ভাবে সেট করা সম্ভব হয়েছে।
দ্রুততম?
আমি বেশি কিছু লিখব না কারণ সমালোচিত হতে পারি, তবে ডিফল্ট সংযোগের সংখ্যা 50।
তবে সত্যি বলতে, 50 পর্যন্ত না গেলেও এটি দ্রুত কাজ করে।
গতির গুরুত্ব এই কারণে যে, আমি 5ch এর UNIX বোর্ডের 2022 বা 2023 সালের কাছাকাছি সময়ের সংরক্ষণ করছিলাম। এটি প্রায় 30GB ছিল।
সেই সময়, আমি হতবাক হয়েছিলাম যে স্ক্রিপ্টের ঝড় এত বেশি ছিল যে ঐতিহাসিক থ্রেড এবং পোস্টগুলি দ্রুত পুরানো লগগুলিতে ভেসে যাচ্ছিল।
অতএব, আমার জন্য গতিকে গুরুত্ব দেওয়া অপরিহার্য ছিল।
বাকি...
আমি একটি ক্যাশে ফাইল তৈরি করতে চাই যা আমি একবার তৈরি করতে ব্যর্থ হয়েছিলাম, যাতে বাধাগ্রস্ত হওয়ার পরেও প্রক্রিয়া চালিয়ে যেতে পারি, এবং সম্ভবত একটি LRU ক্যাশে বাস্তবায়ন করতে চাই...
আমি বিভিন্নভাবে ব্যর্থ হয়েছি, তাই আমি কোনোভাবে সেগুলিকে অন্তর্ভুক্ত করতে চাই।
তাহলে। আবার দেখা হবে।
এবং... আমি এত ক্লান্ত ছিলাম যে কম্পিউটার দেখতে দেখতে ঘুমিয়ে পড়েছিলাম...