برای انتقال تعداد بالای فایل لازم است، انتقال به صورت موازی راه مناسبی است. یک راه استفاده از lftp و mirro است.
https://www.cyberciti.biz/faq/lftp-mirror-example/
http://moo.nac.uci.edu/~hjm/HOWTO_move_data.html#_parallel_rsyncs
برای انتقال تعداد بالای فایل لازم است، انتقال به صورت موازی راه مناسبی است. یک راه استفاده از lftp و mirro است.
https://www.cyberciti.biz/faq/lftp-mirror-example/
http://moo.nac.uci.edu/~hjm/HOWTO_move_data.html#_parallel_rsyncs
برای دور زدن رجیستری تحریم شده npm میتوانید از رجیستریهای جایگزین مانند https://iranrepo.ir/#npm استفاده کنید.
همچنین در فایل Dockerfile نیز میتوانید دستور RUN npm install را به صورت زیر تغییر دهید.
RUN npm install --registry=https://npm.iranrepo.ir/
سرویس داکر در ایران به دلیل تحریم، در دسترس نیست. به این صورت که هنگام دریافت ایمیجها با خطای زیر روبهرو میشوید.
Get "https://registry-1.docker.io/v2/": net/http: TLS handshake timeout
یک راه حل ساده استفاده از رجیستری جایگزین است. بر اساس مستندات داکر درمورد رجیستری جایگزین، برای تغییر رجیستری به https://docker.dockerme.ir فایل /etc/docker/daemon.json را به صورت زیر ویرایش کنید.
{
"registry-mirrors": ["https://docker.dockerme.ir"]
}
یک فایل سیستم توزیع شده (DFS)، هر فایل سیستمی است که امکان دسترسی به فایلها را از چندین میزبان به اشتراک گذاشته شده از طریق یک شبکه کامپیوتری فراهم میکند. این امکان را برای چندین کاربر در چندین ماشین فراهم میکند تا فایلها و منابع ذخیره سازی را به اشتراک بگذارند.
فایل سیستمهای توزیعشده در عملکرد، تغییرپذیری محتوا، مدیریت نوشتن همزمان، مدیریت از دست دادن دائمی یا موقت گرهها یا ذخیرهسازی، و سیاست ذخیرهسازی محتوا متفاوت هستند.
منبع: https://en.wikipedia.org/wiki/Comparison_of_distributed_file_systems
باندلینگ یا بستهبندی یکی از مراحل توسعه در زبان جاوا اسکریپت است.
در توسعه مدرن جاوا اسکریپت، کد شما وابستگی زیادی به ماژولهای جاوا اسکریپتی دیگر دارد که معمولا در مسیر node_modules ذخیره شدهاند.
اما در نهایت مرورگر به چند فایل جاوا اسکریپت که همه نیازمندیهای اپلیکیشن را شامل میشود نیاز دارد. بنابراین کد نوشته شده توسط شما و همه پیش نیازهای آن که در مسیر node_modules قرار دارد باید در چند فایل جاوا اسکریپت نهایی ذخیره شوند.
ابزارهای Bundling با همین منظور توسعه داده شدهاند. برای مثال ابزار esbuild به صورت زیر کدها را بستهبندی میکند.
کد شما که به پکیجهای react و react-dom نیاز دارد را در نظر بگیرید:
npm install react react-dom
فایل app.jsx شامل کد زیر است:
import * as React from 'react'
import * as Server from 'react-dom/server'
let Greet = () => <h1>Hello, world!</h1>
console.log(Server.renderToString(<Greet />))
باندل کردن کد توسط esbuild:
./node_modules/.bin/esbuild app.jsx --bundle --outfile=out.js
این کد دیگر به مسید node_modules نیاز ندارد و همه چیز در فایل out.js قرار گرفته است. آن را توسط دستور node out.js اجرا کنید.
<h1 data-reactroot="">Hello, world!</h1>

بیت کوین همانند طلا کاربرد ذخیره ارزش دارد. مردم بیت کوین را با هدف حفظ ارزش پول خود خریداری میکنند و نگهداری میکنند. اما در کنار این کاربرد بیت کوین، میتوان از قابلیتهای دیگر آن هم به نفع کسب و کار خود استفاده کنید. پذیرفتن بیت کوین به عنوان روشی برای پرداخت!
بیت کوین در کنار همه چیزهایی که هست، در واقع یک واحد پولی است. شما میتوانید بهای کالا و خدمات خود را در واحد بیت کوین اعلام کنید و کاربران شما نیز میتوانند به بیت کوین صورت حساب خود را پرداخت کنند.
اضافه کردن یک روش پرداخت جدید کار خاصی نیست، اما اگر ارز مورد نظر بیت کوین باشد، مزیتهایی دارد که در ادامه به برخی از آنها اشاره میکنیم.
راه اندازی درگاه پرداخت بیت کوینی بسیار ساده است، شما به هیچ سازمان یا شرکت دیگری وابسته نیستید. لازم نیست برای دریافت درگاه بیت کوین ابتدا برای ای-نماد و سپس برای درگاه بانکی، مدتها وقت بگذارید. تنها چیزی که لازم دارید یک آدرس کیف پول برای دریافت پول از مشتریان است.
اگر از نرم افزارهایی نظیر WordPress استفاده میکنید، به کد نویسی هم نیاز ندارید و تعدادی پلاگین بیت کوینی آماده برای شما وجود دارد.
بیت کوین یک ارز مجازی بدون نهاد مرکزی است، این ارز دیجیتال برای هیچ کشور یا نهادی نیست. از طرفی مقبولیت جهانی دارد.
بنابراین اگر خدمات شما میتوانند به خارج از کشور ارائه شوند، با بیت کوین به راحتی میتوانید به فکر مشتریان خارجی و درآمد بیت کوینی (بهتر از درآمد دلاری) باشید.
هویت مشتری زمانی که به بیت کوین پرداخت میکند، نا مشخص است. بنابراین ممکن است مشتریانی باشند که این موضوع برای آنها جذاب باشد. با قبول بیت کوین کسب و کار شما مشترین جدیدی پیدا خواهد کرد.
نمودار توالی UML نشان میدهد که چگونه مجموعهای از اشیاء در طول زمان در یک فرآیند تعامل دارند. این نمودار پیامهایی را که بین شرکت کنندگان و اشیاء موجود در سیستم تبادل میشود و ترتیب وقوع آنها را نشان میدهد.

در نمودار توالی فرآیند دستگاه ATM پیامهای رد و بدل شده میان کاربر و دستگاه از زمان ورود کارت به داخل دستگاه، تا زمان دریافت پیام تشکر از سمت دستگاه، نشان داده شده است.
برای ایجاد نمودار توالی، از قالب UML Sequence یا قالب Starter diagram استفاده کنید، این دو قالب شامل اشیاء مورد نیاز برای رسم نمودار توالی در شابلون ویزیو هستند. برای ایجاد نمودار باید این اشیاء را از شابلون به داخل کادر بکشید و نمودار خود را ایجاد کنید.
برای هریک از مشارکت کنندگان یک Actor lifeline و برای هر یک از اجزای سیستم یک Object lifeline اضافه کنید.

برای مشخص کردن پیامهای مبادله شده بین lifeline ها از شکل Message استفاده کنید.


آشنایی با حملات منع سرویس به عنوان تهدیدی برای موفقیت یک وبسایت، برای وبمسترها لازم است. حملات منع سرویس ممتد و طولانی میتواند باعث از دست دادن مشتریان شود. از سوی دیگر رقبای شما میتوانند با حملات کوچک و از دسترس خارج کردن وب سایت شما تنها برای 30 دقیقه در روز به مدت یک ماه، تمامی تلاش شما برای افزایش رنک در موتورهای جستجو را از بین ببرند و به سئوی شما لطمه جدی وارد کنند.
حملات منع سرویس (محروم سازی از سرویس – انگلیسی: Denial of Service – به اختصار: DoS) تلاش مخربی است که در دسترس بودن سرویس را هدف قرار میدهند و تلاش میکنند سرویس مورد نظر را مختل کنند. یک شبکهی کامپیوتری یا یک وبسایت خدمات رسانی میتوانند هدف حملات دیداس قرار گیرند.
معمولا حمله کننده تعداد زیادی درخواست یا پکت برای سیستم هدف ارسال میکند و ظرفیت آن را پر میکند. بنابراین سیستم هدف دیگر نمیتواند به سرویسدهی خود ادامه دهد.
در حالت حملات منع سرویس توزیع شده (انگلیسی: Distributed Denial of Service – به اختصار: DDoS) حمله کننده از چندین سیستم برای حمله استفاده میکند.
حمله میتواند در هر یک از لایههای Open Systems Interconnection (OSI) انجام شود. لایههایی که بیشتر مورد حمله قرار میگیرند عبارتند از شبکه (لایه 3), ترنسپورت (لایه 4), پرزنتیشن (Layer 6) و اپلیکیشن (لایه 7).
| # | لایه | کارکرد | مثال |
| 7 | اپلیکیشن | داده | HTTP floods, DNS query floods |
| 6 | پرزنتیشن | داده | SSL abuse |
| 5 | سشن | داده | N/A |
| 4 | ترنسپورت | سگمنت | SYN floods |
| 3 | شبکه | پکت | UDP reflection attacks |
| 2 | دیتا لینک | فریم | N/A |
| 1 | فیزیکی | بیت | N/A |
زمانی که به راههای مقابله با حملات منبع سرویس فکر میکنیم، میتوانیم این حملات را به دو نوع حمله به زیر ساخت (لایه 3 و 4) و حمله به اپلیکیشن (لایه 6 و 7) دستهبندی کنیم.
حملات به لایههای 3 و 4 به حملات مربوط به زیرساخت شناخته میشوند. این نوع حملات بیشتر انجام میشوند. حمله SYN flood و UDP flood انواعی از این نوع حملات هستند. در این حملات ظرفیت شبکه و سرور هدف قرار میگیرد. خوشبختانه نشانههای این نوع حملات واضح است و راه مقابله با آن نیز مشخص است.
این حملات کمتر انجام میشوند اما در صورتی که بخش سنگینی از اپلیکیشن را هدف قرار دهند، میتوانند به سرعت ظرفیت سرور را به خود مشغول کنند.
حمله HTTP flood به صفحاتی که از حافظه پنهان استفاده نمیکنند (مانند صفحه لاگین)، حمله به یک API سنگین برای جستجو یا حملات خاص تر مانند XML-RPC floods در نرم افزار وردپرس، نمونههایی از این حملات هستند.
در اولین گام بهتر است گزینههای در دسترس برای حمله را کاهش دهیم. پورتها، پوروتکلها یا حتی جاهایی که انتظار ندارید از آنجا مشتری داشته باشید را محدود کنید.
استفاده از CDN و Load balancer برای کاهش بار روی سرور اصلی و محدود کردن دسترسی به زیرساخت مانند Database server شروع خوبی است. همچنین استفاده از Firewall برای کنترل ترافیک ورودی لازم است.
یک راه حل عملیاتی قرار گرفتن پشت یک WAF و مخفی کردن IP است. برای اینکار میتوانید از Cloudflare استفاده کنید. دقت کنید که اگر IP شما در گذشته آشکار شده است، باید IP خود را تغییر دهید. اطلاعات تاریخچه DNS در اینترنت موجود است و هکر میتواند IP شما قبل از قرار گرفتن پشت WAF را پیدا کند. سپس با استفاده از Firewall همهی پورتها را ببندید و دسترسی HTTP را فقط برای Cloudflare باز کنید.
در صورت پیاده سازی معماری مقیاس پذیر برای سرویس، مطمئن میشوید سرویس شما تحت هیچ شرایطی از دسترس خارج نخواهد شد. در این حالت حمله هکرهای تنها باعث افزایش هزینههای شما خواهد شد، اما سرویس همچنان به فعالیت خود ادامه خواهد داد.
در صورت تشخیص منبع ترافیک میتوانید به راحتی سرویس دهی با آن را قطع کنید. به خاطر داشته باشید که هکر برای فرآهم کردن Botnet یا زامبی به منظور حمله به شما، هزینههایی پرداخت میکند. بنابراین با بستن منبع حمله هزینههای حمله را بالا میبرید. با اینکار میتوانید قدرت هکر برای حمله را کاهش دهید.

یک خبر بد! اگر برای لود شدن وب سایتتان کاربران را بیش از 3 ثانیه معطل می کنید در معرض خطر از دست دادن کاربرانتان هستید. معمولاً رایج ترین رفتار کاربر در مواجهه با سایت هایی که کند هستند زدن دکمه بازگشت (Back) مرورگر است. سه ویژگی سرعت، امنیت و مناسب بودن نمایش در موبایل ویژگی های ابتدایی و بنیادی هستند که گوگل در مستندات منتشر شده خود بارها بر آن تاکید کرده است. وقتی گوگل به این صراحت این موضوعات را یادآوری می کند، گریزی نیست جز رعایت آن!
وب سایت شما باید سریع باشد، چقدر سریع ایده آل است؟ اگر چه پاسخ به این سوال کمی نسبی است، اما جواب کوتاه این است: کمتر از 2 ثانیه! در کمتر از 2 ثانیه باید پاسخی از سمت وب سایت شما به کاربر داده شود. این سرعت ایده آلی برای انتظار مورد نظر کاربر است. بیش از این زمان شما می توانید کم کم کاربرانتان را بر حسب حوصله و زمانی که سایتتان را ترک می کنند دسته بندی کنید! این دسته بندی خوشایندی نیست! پس برویم سراغ راه حل!
سرویس های مختلفی که عمدتاً در سطح دنیا شناخته شده هستند برای بررسی سرعت سایت مورد استفاده قرار می گیرند. مهم ترین سرویس موجود، سرویس اینسایتز گوگل (PageSpeed Insights) است که برای بررسی سرعت سایت و برخی شاخص های مهم دیگر که بر سئوی سایت شما اثرگذارند راه اندازی شده است. برای استفاده از این سرویس نباید از آی پی های ایران به سرویس وصل شوید، وگرنه سرویس برای شما قابل استفاده نخواهد بود.
سرویس جی تی متریکس (GTmetrix) نیز از سرویس های رایج و مورد استفاده کاربران برای بررسی سرعت لود شدن وب سایت خود است.
از جمله بهترین روش های برای افزایش سرعت وب سایت، توجه به راهنمایی هایی است که سرویس های خوبی مانند پیج اسپید اینساتیز گوگل ارائه می کنند. پس از اینکه نام وب سایت خود را در این سرویس ها وارد کنید، گوگل ضمن اینکه به اشکالات وب سایت شما اشاره می کند و نمره ای کلی به وب سایت شما از لحاظ سرعت لود شدن می دهد، راهنمایی هایی مختلفی نیز برای اینکه در موبایل و دسکتاپ چطور سرعت سایت خود را بهبود ببخشید ارائه می کند. اما راهکارهای کلی زیر می تواند برای افزایش سرعت وب سایت مورد استفاده شما قرار گیرد:
بدیهی است که در این شکی نیست که وب سایت شما باید امن باشد. یکی از المان های مهم امن بودن وب سایت شما استفاده از پروتکل SSL است. یعنی وب سایت شما باید https باشد و نسخه http آن نیز همواره به https هدایت شود.
در نهایت اینکه وب سایت شما باید برای استفاده کاربران موبایل راحت باشد. بیش از 70 درصد جستجوهای پزشکی همواره بر روی موبایل انجام می گیرند. این بدان معناست که اگر سایت مناسبی برای کاربران موبایل ندارید نه تنها کاربران موبایل سایت های آسان تر را به سایت شما ترجیح خواهند داد، بلکه گوگل نیز شما را در رتبه های بسیار پایین تری در نتایج جستجو قرار خواهد داد که شاید هرگز فرصت دیده شدن برای کاربران نداشته باشید.
به تصاویر زیر توجه کنید، به ترتیب از حدود 12 میلیون جستجوی متوسط ماهانه که عبارت های پزشکی زیر را جستجو کرده اند، به طور متوسط بیش از 70 درصد جستجوها روی موبایل انجام گرفته اند.

بگذارید درست برویم سراغ اصل مطلب. بر اساس آمار 73 درصد بیماران برای یافتن پزشک یا درمانگر مناسب خود از گوگل برای جستجو استفاده می کنند و 89 درصد مردم نیز برای پاسخ به پرسش های پزشکی خود سراغ گوگل می روند. از طرفی دیگر، آمار گوگل نشان میدهد که 55 درصد کاربران در یکی از سه نتیجه اول جستجو به پاسخ سوال خود می رسند. به این ترتیب اگر شما در بین یکی از سه نتیجه اول نباشید، همین اول کار 55 درصد از بازار هدف خود را از دست داده اید!
خیلی بد شد، حالا چه باید کرد؟ باید به فرمول سالمی از بهینه سازی برای موتورهای جستجو (SEO) برای وب سایتتان برسید.
سئوی پزشکی به بهبود وضعیت سایت شما در نتایج جستجو گوگل گفته می شود که در نتیجه آن شما قادر خواهید بود زمان های بیشتری از پزشکان و متخصصان کلینیک یا بیمارستان خود پر کنید!
باید با خودمان صادق باشیم. روش های قدیمی جذب کاربران به مرور اثربخشی خود را از دست داده اند (اگر چه که اثر آنها صفر نشده است). کمی قبل تر آمار عجیبی از اینکه رفتار 55 درصد مردم چگونه است ارائه شد. اگر شما در نتایج جستجو بالا نباشید چه اتفاقی می افتد؟ رقبای شما آن 55 درصد یادشده را درو خواهند کرد!
برخی از پزشکان تصور می کنند که حضور در تبلیغات همسان ادنتورک ها و تبلیغات ادروردز گوگل برای نتیجه گرفتن کافیست. البته که این دو اگر به درستی اجرا شوند روش های خوبی برای جذب مشتریان جدید به شمار می روند اما این ها روش های پایداری برای جذب مشتریان جدید نیستند و باید همواره برای جذب هزینه های مستقیمی را خارج از سیستم خود انجام دهید. یعنی به روی سازمان های بیرونی سرمایه گذاری کنید. به روایت اعداد مالی نیز، بازاریابی محتوا در بلندمدت یک سوم هزینه گوگل ادروردز را برای شما در بر خواهد داشت.
تا به امروز بیش از 200 فاکتور برای اینکه چطور در نتایج جستجو بالاتر باشیم شناسایی شده است. اگرچه که الگوریتم های گوگل مرتباً در حال تغییر هستند، اما توجه به برخی اصولی و دائمی، تاثیر مثبت در بهبود رتبه در نتایج جستجو خواهد داشت. به طور کلی:
حال اگر کنجکاو هستید که سئوی پزشکی دقیقا به چه معناست، هر یک از موارد فوق را در مطلبی جداگانه برایتان تشریح کرده ایم که با کلیک بر روی هر یک از موارد فوق می توانید در مورد آن اطلاعات بیشتر کسب کنید.