লোড ব্যালেন্সার হিসাবে অ্যাপাচি - অবিচ্ছিন্ন সংযোগ বিরতিতে বাধ্য করা


0

আমি অ্যাপাচি ২.২ এর মাধ্যমে mod_proxyএবং এর মাধ্যমে লোড ব্যালেন্সার সেটআপ করেছি mod_proxy_balancer। লোড ভারসাম্য ঠিক ঠিক কাজ করে, তবে একটি ক্ষেত্রে আমি কোনও কনফিগারেশন বিকল্প খুঁজে পাই না, যেমন ব্যাকএন্ড সার্ভারগুলিতে অবিচ্ছিন্ন সংযোগগুলি ব্যবহার করার সময়, যখন তাদের মধ্যে কোনও মারা যায় (বন্ধ হয়ে যায়, ক্র্যাশ ইত্যাদি), এটির সাথে বিদ্যমান সংযোগগুলি এখনও এটি অ্যাক্সেস করার চেষ্টা করুন।

অ্যাপাচি লোড ব্যালেন্সারকে কনফিগার করার কোনও উপায় আছে যাতে এটি মৃত ব্যাকএন্ড সার্ভারের সাথে সংযোগগুলি ছেড়ে দেয় বা পুনরায় তৈরি করে? LVS বিশ্বে Ldirector এর কাছে প্রোক এফএস এর অধীনে একটি বিকল্প রয়েছে যা কেবল এটি পরিচালনা করে:

/proc/sys/net/ipv4/vs/expire_quiescent_template

যখন এটি স্থায়ী সেশন / সংযোগ স্থাপন করা হয় বা একটি ডেড ব্যাকএন্ড সার্ভার ফ্লাশ করা হবে যাতে পরবর্তী ক্লায়েন্টের অনুরোধে সেগুলি পুনরায় তৈরি করা যায়।

অ্যাপাচি বিশ্বে এর সাথে কি মিল রয়েছে?

পিএস কোন উপায়ে অ্যাপাচি ব্যাকএন্ড সার্ভারের স্থিতি পরীক্ষা করে? এটি কি কোনও বন্দর বা এর মতো কোনও কিছুর সাথে সংযোগ স্থাপনের চেষ্টা করে? যদি কেউ তার উপরও কিছুটা আলোকপাত করতে পারে তবে দুর্দান্ত হবে!

এখানে আমার ভার্চুয়াল হোস্ট কনফিগারেশন ফাইলটি রয়েছে:

সার্ভারএডমিন অ্যাডমিন@mysite.com সার্ভারনাম myapp.mysite.com

DocumentRoot /srv/www/vhosts/myapp.mysite.com

ErrorLog /var/log/apache2/myapp.mysite.com-error_log
CustomLog /var/log/apache2/myapp.mysite.com-access_log combined

HostnameLookups Off
UseCanonicalName Off
ServerSignature On
ScriptAlias /cgi-bin/ "/srv/www/vhosts/myapp.mysite.com/cgi-bin/"

<Location /balancer-manager>
    SetHandler balancer-manager
    Order Deny,Allow
    Deny from all
    Allow from all
</Location>

<Location /server-status>
    SetHandler server-status
    Order deny,allow
    Deny from all
    Allow from bmf.intern.netz
</Location>

Header add Set-Cookie "ROUTEID=.%{BALANCER_WORKER_ROUTE}e; path=/" env=BALANCER_ROUTE_CHANGED
<Proxy balancer://myapp>
    BalancerMember http://172.22.1.133:777/ loadfactor=10 route=1 connectiontimeout=200ms
    BalancerMember http://172.22.1.134:777/ loadfactor=10 route=2 connectiontimeout=200ms
    ProxySet stickysession=ROUTEID
    ProxySet lbmethod=byrequests
</Proxy>

ProxyPass /balancer-manager !
ProxyPass /server-status !
ProxyPass / balancer://myapp/ lbmethod=byrequests
ProxyPassReverse / balancer://myapp/

<Directory "/srv/www/vhosts/myapp.mysite.com/cgi-bin">
    AllowOverride None
    Options +ExecCGI -Includes
    Order allow,deny
    Allow from all
</Directory>

<IfModule mod_userdir.c>
    UserDir public_html
    Include /etc/apache2/mod_userdir.conf
</IfModule>


#
# This should be changed to whatever you set DocumentRoot to.
#
<Directory "/srv/www/vhosts/myapp.mysite.com">

    Options Indexes FollowSymLinks
    AllowOverride None

    Order allow,deny
    Allow from all

</Directory>


আপনি যদি অ্যাপাচি ব্যবহার করতে বাধ্য না হন তবে সম্ভবত আপনি হ্যাপ্রোক্সি হ্যাপ্রোক্সি ১.wt.eu চেষ্টা করে দেখতে পারেন । অন্যথায় মোড_প্রক্সির সাহায্যে আপনি টিটিএল, পুনরায় চেষ্টা এবং টাইমআউট মানগুলির সাথে খেলতেও চেষ্টা করতে পারেন। ডকুমেন্টেশন এখানে চেক করুন: httpd.apache.org/docs/2.2/mod/mod_proxy.html । আমি যতদূর জানি "জীবিত" চেক অনুরোধের সময় করা হয়।
টনি

জবাবের জন্য প্রথমে ধন্যবাদ :) টিটিএল মানগুলি ব্যবহারকারীদের প্রত্যেক সময় এবং তারপরে পুনরায় অনুমোদন দেবে, যা মোটেই পছন্দসই নয়। কানেকশনটাইম একই সমস্যা উপস্থাপন করে। প্রকৃত সার্ভারগুলি অনলাইনে থাকাকালীন আমি ব্যবহারকারীর সংযোগগুলিকে হত্যা বা সীমাবদ্ধ করতে চাই না, আমি যে সার্ভারে সংযুক্ত হয়েছি সে মারা যায় / অনুপলব্ধ হয়ে গেলে আমি তাদের পুনর্নির্দেশ করতে চাই। এইএআরপক্সির কি মেয়াদ উত্তীর্ণ শান্ত টেম্পলেটগুলির মতো এই আঠালোতা অপসারণ বিকল্প রয়েছে?
কনস্ট্যান্টিন বায়ানভ

উত্তর:


0

আপনি যদি জাভা ব্যাকএন্ডের প্রয়োজন হয় এমন (এজন্য) আমার কাছে অ্যাজপি 13 সংযোগটি ব্যবহার করতে মোড_প্রক্সি স্যুইচ করা হয়, আপনি সেশন স্টিকিনেস অর্জন করতে সক্ষম হতে পারেন

আমি মনে করি যে আপনি "মেয়াদোত্তীর্ণ" বিকল্পটি অনুসন্ধান করছেন এটি HAProxy এ উপস্থিত রয়েছে

বিকল্প পুনর্নির্মাণ কোনও বিকল্প পুনর্নির্মাণ প্যাশন সংযোগ ব্যর্থতার ক্ষেত্রে সেশন পুনরায় বিতরণ সক্ষম বা অক্ষম করুন বিভাগগুলিতে ব্যবহার করা যেতে পারে: ডিফল্ট | সম্মুখভাগ | শোনো | ব্যাকএন্ড হ্যাঁ | না | হ্যাঁ | হ্যাঁ আর্গুমেন্ট: কোনওটি নয়

এইচটিটিপি মোডে, যদি কোনও কুকি দ্বারা মনোনীত সার্ভারটি বন্ধ থাকে তবে ক্লায়েন্টরা অবশ্যই এতে আটকে থাকতে পারে কারণ তারা কুকিকে ফ্লাশ করতে পারেন না, তাই তারা আর পরিষেবাটি অ্যাক্সেস করতে পারবেন না।

"অপশন পুনর্নির্মাণ" নির্দিষ্ট করা প্রক্সিটিকে তাদের অধ্যবসাকে ভঙ্গ
করতে এবং একটি ওয়ার্কিং সার্ভারে পুনরায় বিতরণ করতে দেয়।

এটি একাধিক সংযোগ ব্যর্থতার ক্ষেত্রে অন্য সার্ভারের সাথে শেষ সংযোগটি আবার চেষ্টা করার অনুমতি দেয়। অবশ্যই, এটির জন্য একটি ননজারো মান "পুনরায় চেষ্টা" করা দরকার।

এই ফর্মটি পছন্দসই ফর্ম যা "রিডিসপ্যাচ" এবং "পুনরায় বিতরণ" কীওয়ার্ড উভয়কে প্রতিস্থাপন করে।

এই বিকল্পটি যদি কোনও "ডিফল্ট" বিভাগে সক্ষম করা থাকে, তবে এটির আগে "না" কীওয়ার্ডটি প্রিণ্ডেন্ট করে নির্দিষ্ট উদাহরণে এটি অক্ষম করা যেতে পারে।

আরও দেখুন: "রিডিসপ্যাচ", "পুনরায় চেষ্টা করুন", "জোর করে চালিয়ে যাওয়া"

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.