أصلي من 1078 # ، هذا طلب ميزة لإضافة إمكانية للأوامر aws s3
للحد من مقدار النطاق الترددي المستخدم للتحميلات والتنزيلات.
في المسألة المشار إليها ، تمت الإشارة على وجه التحديد إلى أن بعض مزودي خدمة الإنترنت يتقاضون رسومًا إذا تجاوزت معدل نقل بيانات معين في الثانية ، لذلك يحتاج المستخدمون إلى القدرة على تقييد النطاق الترددي.
أتخيل أن هذا شيء نحتاج فقط لإضافته إلى أوامر aws s3
.
مرحبا جيمسيس ،
هل يمكنك تقديم إطار زمني عندما يصبح حد النطاق الترددي متاحًا؟
شكرا
أوستننوو
: +1:
: +1:
: +1:
: +1:
: +1:
: +1:
: +1:
: +1:
في ظل أنظمة نكهة Unix ، يكون الهزيلة مفيدًا للاختناق المخصص. trickle
ربط واجهات برمجة تطبيقات مأخذ التوصيل باستخدام LD_PRELOAD
وعرض النطاق الترددي الخانق.
يمكنك تشغيل أوامر شيء مثل
$ trickle -s -u {UPLOAD_LIMIT(KB/s)} command
$ trickle -s -u {UPLOAD_LIMIT(KB/s)} -d {DOWNLOAD_LIMIT(KB/s)} command
ستكون الميزة المضمنة مفيدة حقًا ، ولكن نظرًا لطبيعة AWS-CLI متعددة الأنظمة الأساسية ، فقد يكلف تنفيذها وصيانتها الكثير.
تم ذكر Trickle على وجه التحديد في الإصدار رقم 1078 المرتبط به في التعليق الأول هنا. لا يلعب الاثنان (الوشل و AWS-CLI) بشكل جيد معًا في تجربتي.
: +1:
: +1:
+1
+1
: +1:
+1
+1
: +1:
(و)
: +1:
: +1: هذا مطلوب بشدة!
: +1:
: +1:
+1
+1
: +1:
👍
أي تحديث على هذه الميزة؟
: +1:
: +1:
👍
👍
أي تحديثات على هذا؟
👍
👍
👍
👍
👍
: +1:
من ناحية: أسرع بكثير من s3cmd.
من ناحية أخرى: أوقفت شركة الاستضافة الخاصة بي الخادم تلقائيًا لاستخدامه "كميات كبيرة من النطاق الترددي بشكل مثير للريبة".
اقترح أحدهم aws configure set default.s3.max_concurrent_requests $n
حيث يكون $ n أقل من 10. لست متأكدًا مما إذا كان هذا كافياً ؛ سيحقق في أداة الوشل المذكورة أعلاه.
👍
بعد مرور أكثر من عامين ، ولا يزال هذا الطلب معلقًا. هل هناك إطار زمني يمكن من خلاله تنفيذ ذلك؟
👍
👍
👍
👍🏿
: +1:
قم فقط بتفجير الإنترنت في مكتب مشترك.
ستكون هذه ميزة رائعة عندما تريد أن تكون لطيفًا مع الآخرين
👍
👍
يمكنك استخدام trickle -s -u 100 aws s3 sync . s3://examplebucket
sofuca هل هذا يعمل بشكل صحيح رغم ذلك؟ هناك العديد من الأشخاص الذين جربوا trickle
لهذا لكن النتائج كانت مشكوك فيها. انظر # 1078.
تضمين التغريدة
يعمل بشكل مثالي بالنسبة لي.
الأمر التالي يميز الإنترنت في المكتب ، إنه اتصال 20 ميجابايت / ثانية
aws s3 cp /foo s3://bar
ويتم تحميل الأمر التالي بسرعة 8 ميجا بايت / ثانية
trickle -s -u 1000 aws s3 sync /foo s3://bar
لقطة شاشة للواجهة الخارجية لجدار الحماية الذي أستخدمه
👍
ستؤدي ملفات s3 الهزيلة والكبيرة إلى تعطل الوشل
(و)
معذرةً ، ستؤدي ملفات s3 الصغيرة والكبيرة إلى تعطل الوشل باستخدام boto3 مع 10 عمليات تحميل متزامنة (إعدادات افتراضية) ، وسيؤدي تغيير التحميلات المتزامنة إلى حل المشكلة. أريد إضافة هذا في جيثب boto3 ، شكرًا!
👍
لذلك فقد مضى أكثر من 2.5 سنة منذ أن تم افتتاحه. هل هذا الطلب يتم تجاهله فقط؟
بالنسبة لنا ، نستخدم pv (https://linux.die.net/man/1/pv) في هذه الطريقة:
/usr/bin/pv -q -L 20M $l_filepath | /usr/local/bin/aws s3 cp --region "us-east-1" - s3://<s3-bucket>/<path in s3 bucker>
هذا الحل ليس مثاليًا (لأنه يتطلب دعمًا إضافيًا للتصفية والتكرار ، ونحن نفعل ذلك داخل bash loop) ولكنه أفضل بكثير من الهزيلة التي تستخدم في حالتنا 100٪ من وحدة المعالجة المركزية ، وتتصرف بشكل غير مستقر للغاية
هنا لدينا حالة استخدام كاملة من pv (نحد من سرعة التحميل إلى 20 ميجابايت / ثانية == 160 ميجابت / ثانية)
for l_filepath in /logs/*.log-*; do
l_filename=`basename $l_filepath`
/usr/bin/pv -q -L 20M $l_filepath | /usr/local/bin/aws s3 cp --region "us-east-1" - s3://$S3BUCKET/${HOSTNAME}/$l_filename
/bin/rm $l_filepath
done
+1
حالة الاستخدام الواقعي: تحميل كبير جدًا إلى S3 عبر DX ، لا ترغب في تشبع الارتباط والتأثير المحتمل على تطبيقات الإنتاج باستخدام رابط DX.
throttle
، trickle
و pv
كلها لا تعمل معي على archlinux بأحدث awscli
من pip
عند التحميل إلى حاوية. لقد قمت أيضًا بتعيين max_concurrent_connections
لـ s3 في تكوين awscli
على 1 دون أي فرق. سيكون هذا إضافة محل تقدير كبير!
ischoonover يبدو أنك لا تمرر --expected-size
إلى aws cli عند استخدامه مع pv ، فهو مفيد جدًا عند محاولة تحميل ملفات كبيرة جدًا
--expected-size (string) This argument specifies the expected size of a stream in terms of bytes. Note that this argument is needed only when a stream is being uploaded to s3 and the size is larger than 5GB. Failure to include this argument under these conditions may result in a failed upload due to too many parts in upload.
@ tantra35 كان الحجم 1 جيجا --limit-rate
نفذ في # 2997.
التعليق الأكثر فائدة
قم فقط بتفجير الإنترنت في مكتب مشترك.
ستكون هذه ميزة رائعة عندما تريد أن تكون لطيفًا مع الآخرين
👍