דילוג לתוכן
  • דף הבית
  • קטגוריות
  • פוסטים אחרונים
  • משתמשים
  • חיפוש
  • חוקי הפורום
כיווץ
תחומים

תחומים - פורום חרדי מקצועי

💡 רוצה לזכור קריאת שמע בזמן? לחץ כאן!
  1. דף הבית
  2. תכנות
  3. האם איחסון בענן של מערכת שמורכבת משפות : Node.js MySql React אמורה לעלות מינימום 40-50 דולר לחודש?

האם איחסון בענן של מערכת שמורכבת משפות : Node.js MySql React אמורה לעלות מינימום 40-50 דולר לחודש?

מתוזמן נעוץ נעול הועבר תכנות
13 פוסטים 8 כותבים 584 צפיות
  • מהישן לחדש
  • מהחדש לישן
  • הכי הרבה הצבעות
התחברו כדי לפרסם תגובה
נושא זה נמחק. רק משתמשים עם הרשאות מתאימות יוכלו לצפות בו.
  • TGT מנותק
    TGT מנותק
    TG
    כתב ב נערך לאחרונה על ידי
    #1

    שלום לכולם,

    אני פיתחתי מערכת מבוססת Node.js, MySQL ו-React, והדרישות שלה כוללות את הנקודות הבאות:

    1.המערכת מבוססת על טכנולוגיית זמן אמת (WebSocket), מה שמחייב זמן תגובה מהיר.
    2. כמות המשתמשים במערכת היא מינימלית, מקסימום 20 משתמשים.
    3. השימוש במערכת מתבצע בכל יום, למשך 24 שעות, עם שעות שימוש מוגברות של כ-7 שעות ביום.
    4. בכל יום מתווספות למערכת כ-100-200 רשומות למסד הנתונים, אך אין לי דרך לכמת בצורה מדויקת את כמות הזיכרון הנדרשת.

    העליתי את המערכת לשירותי Render, שמשלבים אחסון בענן עבור השרת לקוח והמסד נתונים MySQL.
    השירות של מסד הנתונים עולה כ-27$ לחודש, והשרת והלקוח כרגע שירותים חינמיים.
    אני שוקלת לשדרג את השרת והלקוח לשירות בתשלום, מאחר ואני נתקלת בבעיות של איטיות בתגובה ובזמן אמת.

    השאלה שלי היא: האם זה הגיוני למצוא שירותי אחסון בענן במחירים זולים יותר?
    אני פיתחתי את המערכת מבלי לדעת מראש על העלויות הכרוכות באחסון בענן, זו פעם ראשונה שלי שאני מתעסקת עם זה.
    ואני מתחילה לתהות מדוע ללקוח כדאי לשלם סכומים גבוהים מראש עבור המערכת, יחד עם תשלום עבור תחזוקת הענן.

    האם זו ציפייה סבירה לשלם סכומים כאלה עבור מערכת שאינה גדולה במיוחד ולא כוללת הרבה משתמשים?

    אשמח לכל מידע, טיפים או המלצות בנושא.

    תודה רבה מראש!

    תגובה 1 תגובה אחרונה
    0
    • חגיח מנותק
      חגיח מנותק
      חגי
      כתב ב נערך לאחרונה על ידי
      #2

      אני מתפלא על האיטיות, לפי הפירוט גם השרת הזול ביותר היה עושה עבודה טובה ומהירה (יש גם ב4.2$).
      יכול להיות שיש עוד פרטים שחסרים?

      תגובה 1 תגובה אחרונה
      3
      • TGT מנותק
        TGT מנותק
        TG
        כתב ב נערך לאחרונה על ידי
        #3

        @חגי
        לגבי האיטיות- אני משתמשת בטכנולוגיה של websocket - זמן אמת.
        יכול להיות שזה אחד הגורמים לאיטיות אבל אין לי דרך לדעת בוודאות.
        (הקריאות לשרת מהלקוח הן לא קריאות ע"י axios אלא ע''י socket)
        הבעיות של חוסר תגובה או איטיות לא מתרחשות כל הזמן,
        לפעמים המערכת מגיבה בהתאם לציפיות ולפעמים אין תגובה, או לאחר זמן רב מידיי.
        (מה שלא קרה ב-localhost)

        זה בגדול.
        (יכול להיות שזה פשוט בעיה של קוד שצריך לבצע התאמה לשרת בענן?
        אני מנסה להבין איפה הבעיה בדיוק, אם המערכת כן עבדה תקין על המחשב המקומי...)

        M תגובה 1 תגובה אחרונה
        0
        • M מנותק
          M מנותק
          mekev
          השיב לTG ב נערך לאחרונה על ידי
          #4

          @TG
          האיטיות בצד לקוח?
          האם בדקת מהי מהירות הגלישה אצל הלקוח?
          האם בדקת האם זה תוצאה של סינון אינטרנט של המשתמש?

          תגובה 1 תגובה אחרונה
          4
          • dovidD מנותק
            dovidD מנותק
            dovid ניהול
            כתב ב נערך לאחרונה על ידי
            #5

            @TG לא, websocket זו לא סיבה לאיטיות מורגשת.
            המחיר שאתם משלמים כעת למסד הנתונים הוא ענק ואין לו הצדקה, אתם צריכים לעבוד עם שרת פרטי (VPS) או שירות מנוהל זול בהרבה.
            בשביל להבין למה האיטיות צריך באמת לחקור את האפליקציה ולמצוא את הסיבה, ייתכן חוסר יעילות בקריאות לשרת שגורמות לכך שרק במקומי זה יהיה סביר.

            מנטור אישי למתכנתים (ולא רק) – להתקדם לשלב הבא!

            בכל נושא אפשר ליצור קשר dovid@tchumim.com

            תגובה 1 תגובה אחרונה
            5
            • TGT מנותק
              TGT מנותק
              TG
              כתב ב נערך לאחרונה על ידי
              #6

              יש לכם הצעה לשירות זול יותר?
              פחות מכירה את תחום הענן.

              תגובה 1 תגובה אחרונה
              0
              • 5 מנותק
                5 מנותק
                5566brs
                כתב ב נערך לאחרונה על ידי 5566brs
                #7

                תובנה בסיסית בנושא:
                סוג מספר 1 של שירותים בתחום הוא "רכישת מחשב בענן".
                זה אומר למשל VPS, שזה מחשב מרוחק וירטואלי (בפועל זה מחשב גדול שהמשאבים שלו משותפים בין הרבה משתמשים, והחלוקה למחשבים אחרים מושגת באמצעות וירטואליזציה תוכנתית).
                או גם אפשר לרכוש כזה שאינו משותף עם אחרים.
                הגישה של המשתמש אליו מתבצעת בדרך כלל באמעות SSH (לפחות ראשונה, לפני התקנת תוכנות בהתאמה אישית).

                חסרון של סוג זה:

                1. צריך לדעת מה לבחור, כמה אחסון, כמה זכרון, איזה CPU וכדומה.
                2. זה לא גמיש, או פחות גמיש, אם רוצים להגדיל אחד מהמרכיבים שבחרנו בסעיף 1 צריך לקנות חדש ולהעביר וכדומה.
                3. המשתמש אחראי על התקנת התוכנות והכל (אפשר אמנם להתחיל ממשהו שמותקן בו דברים מסוימים, תלוי בספקים השונים) לטוב ולרע, כולל זה שיש אפשרות שננעלים בחוץ וצריך לאפס הכל (זה ממש דורש זמן למידה) וכולל האפשרות שהעמסנו יותר מדי והמכונה פשוט הפסיקה להגיב, וצריך לאתחל דרך הממשק שהספק נותן.
                4. המשתמש אחראי על תעודת אבטחה, דומיין, DNS ואין אפילו איך להתחיל להשתמש בלעדיהם, גם לא זמנית.

                יתרונות:
                זול בפער עצום מסוג מספר 2 להלן. בדרך כלל עם חיבור עם שירותים כמו cloudflare או letsencrypt כדי להשיג TLS וכדומה (בחינם).
                יש לסייג שזה זול רק בשימוש עם מערכת הפעלה לינוקס (זה הנפוץ ב99% מהמקרים, אמנם יש אפשרות גם להתקין בכל מיני דרכים WIN לבד, אבל כשמראש הספק מאפשר שימוש בWIN בצורה חוקית, זה מעלה את המחיר בהרבה מאד, גם בגלל שזה בדרך כלל דורש מחשב חזק יותר, וגם בגלל שזה עולה כסף בנפרד).
                ישנן עוד מעלות וחסרונות אבל זה הבסיס.

                סוג מספר 2 של שירותים, הוא שירות מנוהל, שבו יש הרבה מאד סוגים, והרבה מאד ספקים שמספקים דברים דומים מבחינת שירות, אבל עלולים להיות שונים מבחינת טרמינולוגיה (כלומר כל אחד יקרא לשירות שלו בשם אחד וישתמש במונחים אחרים לתאר רכיבים בשירות..)
                אבל כדי להסביר, יש למשל שירות שמספק את האפשרות להעלות את הקוד כמו שהוא (איך מעלים - יש יותר מדרך אחת בדרך כלל) ובכל השאר מטפל הספק.
                ויש שירות שמאפשר להעלות קוד שיעשה פעולות בתגובה לאיזשהו אירוע וכדומה. כל אלו שירותים שבחלוקה כללית שייכים לסוג 2.

                חסרונות:

                1. יקר יותר בפער, למרות שגם בזה יש ספקים שנותנים בסיס בחינם מתוך ההנחה שכשתגדלו ותצרכו יותר תשלמו (או שתתרגלו לפלטפורמה וגם בפרויקטים גדולים יותר תשתמשו בזה, וזה מתחבר עם חסרון מספר 2 שהוא חסרון אדיר מימדים בעיני).
                2. צריך לבנות מראש או להתאים את הפרויקט מקצה לקצה כדי להשתמש בשירות, לפחות בחלק מהתצורות של השירותים האלו (למשל בcloud functions) או לבחור במסגרת פיתוח שמתאימה את עצמה לזה (כמו nuxt.js בגירסה האחרונה), וככל שהשירות פחות מצריך פיתוח מראש בהתאמה לפלטפורמה, כך מחירו יעלה בהתאם.
                3. הדרך להשתמש בשירות הזה, תמיד תבוא עם עוד שירותים בתשלום.. כמו אחסון של DB במקרה של functions כמו lambda.
                  וזה מכיון שהשירות רק מפעיל את הקוד, כלומר הרעיון בבסיס השירות הוא שהם מספקים רק הפעלה של הקוד, אבל לא אחסון של נתונים או קבצים. זה לא מחשב שאתם מקבלים, זה שירות שמפעיל את הקוד שכתבתם, ואם השירות לא באוויר - הקוד לא באוויר.
                  ההמשך של הרעיון הוא להשתמש בשירות אחר שמספק אחסון נתונים (למשל) ולחבר בין שני השירותים.
                4. משאיר את המשתמש חסר ידע לחלוטין (הסימון של זה כחסרון הוא לטעמי האישי בלבד, ועל זה אפשר להוסיף שזה גם מצריך רכישת ידע - למידת השירות).

                מעלות-הפוך מהחסרונות בסוג שירות מספר 1:

                1. אין צורך לבחור משאבים, המשאבים נבחרים על ידי הספק בהתאם לצורך.
                2. גמישות מירבית, הספק מתאים את צריכת המשאבים בדר"כ ויש גם אפשרות להגביל למחיר מסוים (כמובן שהצריכה מגדירה את המחיר..)
                3. יש בדרך כלל אפשרות להתחיל להשתמש מיידית, ולו באופן זמני.
                4. הרבה מהדברים מטופלים באמצעות השירות, כולל דברים חיצוניים לו (אבל בא עם מגבלות בנושא הזה גם).

                --

                השירותים שאני מכיר שהתמחור שלהם מצדיק העמקה ופיתוח מראש בהתאם לפלטפורמה זה רק cloudflare workers (ושאר הכלים שהם מציעים בפלטפורמה. עד לאחרונה היה שירות בשם cyclic, אבל הם ירדו\יורדים מהאוויר, דרוש תחליף..).
                אמנם מאד מסובך להבין אותם והתיעוד לא מספק, אבל התמחור נותן הרבה מאד ערך בחינם. ברוב המקרים לא יהיה תשלום בכלל, לפרויקטים בגודל סביר (מלבד סל שירותים מסוימים שעולה החל מהשימוש הראשוני, כמו רכישת דומיין).

                הדרך המומלצת היא להכיר את הכל.. כמובן זה אומר להשקיע זמן וללמוד את הנושא.
                כשמתנסים בחלק מהשירותים וצוברים ניסיון, מבינים מתי ואיך להשתמש בכל סוג, או אפילו לשלב ביניהם, והדובדבן שבקצפת - איך לתכנן מראש פרויקט בצורה המיטבית שתשלב את היתרונות מכל הסוגים.
                ברעיון יש אפשרות להשתמש בסוג 1 כדי לבנות סוג 2 (שזה מה שספקי סוג 2 עושים, ואפשר להשיג את זה לבד, על ידי k8s וכלים מהסוג הזה, אין לי בפועל ידע בזה, וזה מתאים לצרכנים שהם מספיק גדולים כדי להשקיע ולבנות לעצמם את הגמישות בצריכה לבד).

                צדיק תמיםצ תגובה 1 תגובה אחרונה
                12
                • TGT מנותק
                  TGT מנותק
                  TG
                  כתב ב נערך לאחרונה על ידי
                  #8

                  @5566brs תודה רבה על התשובה המפורטת,
                  ממה שהבנתי, כל עוד אין לי ידע מספק בהקמת ענן פרטי, עדיף לא להתעסק עם זה כשאני רוצה לראות תוצאות מהירות.
                  לכן עדיף לפנות לספקי ענן שעושים את כל העבודה, אבל מאידף לשלם הרבה כסף על כך.

                  ולכן חוזרת לשאלה הראשונית שלי:
                  האם יש ספקי ענן זולים יותר מ-RENDER לאיחסון DB של MySql?

                  או ש-27$ זה מחיר ממוצע לחודש ל:
                  1 CPU
                  Memory 2GB
                  Disk Usage 10 GB

                  5 תגובה 1 תגובה אחרונה
                  0
                  • 5 מנותק
                    5 מנותק
                    5566brs
                    השיב לTG ב נערך לאחרונה על ידי 5566brs
                    #9

                    @TG
                    כשהשאלה הופכת לפרקטית נקודתית, כנראה יש עדיפות לבעלי ניסיון, וזה לא נכון במקרה שלי.
                    חיפוש גוגל עונה תשובות טובות לשאלה הזו אפילו בניסוח גרוע

                    התוספת היחידה שעולה בדעתי שלא מגיעים אליה דרך גוגל היא זו:
                    https://github.com/ripienaar/free-for-dev
                    יש שם תוצאות גם בנושא הזה.

                    מניסיון העבר יש קונצנזוס בקרב חברי הפורום שכדאי להשקיע קצת, ולהתחיל ללמוד "להקים ענן פרטי" או לתחזק VPS משלכם.

                    תגובה 1 תגובה אחרונה
                    1
                    • Y מנותק
                      Y מנותק
                      yoel3
                      כתב ב נערך לאחרונה על ידי yoel3
                      #10

                      לכאורה פיסת מחשב וירטואלית הכי זולה בענן (מוכר כVPS) יספיק לך
                      אני ממליץ מנסיון על HETZNER
                      https://www.hetzner.com/cloud/
                      במקרה שלך הם גם הכי זולים!

                      יש להם גם מתחרים כמו CONTABO (שבמקרה עברו בשבוע שעבר השבתה מאסיבית)
                      וOVH
                      כאמור אני הכי ממליץ על HETZNER
                      ואני ממליץ אצלם על אחסון מבוסס Arm64 / Ampere שנותן יותר תמורה לכסף.
                      את יכולה לאחסן מסד נתונים מקומי או להתממשק למסד חיצוני

                      העלות היא כ4 יורו לחודש

                      תגובה 1 תגובה אחרונה
                      1
                      • צדיק תמיםצ מנותק
                        צדיק תמיםצ מנותק
                        צדיק תמים
                        השיב ל5566brs ב נערך לאחרונה על ידי צדיק תמים
                        #11

                        @5566brs כל הכבוד על התגובה המפורטת. כמה הערות:

                        1. בתוך "שירות מנוהל" מנוהל שהזכרת כאחד היו למעשה 3 סוגים:
                        • SaaS (לדוגמה: heroku, fly.io): שירות הרצה מנוהלת במלואה של פרויקטים "רגילים". זה רץ על מכונת ויטורלית רגילה וקבועה (כלומר אפשר לסמוך על state), רק שאתה לא צריך להתעסק בכלל עם התחזוקה והתצורה, להתקין תלויות, לעדכן את הקוד בשרת, להגדיר DNS תעודה וכו' וכו', אתה מחבר את המאגר בגיט והוא מריץ לך הכל, ואם אתה צריך מסד נתונים הם גם יספקו לך שירות מסד נתונים מנוהל, וכמובן שהקאץ' במחיר שהוא פי כמה מאותו מפרט בשרת רגיל.
                          נ.ב. יש כיום תוכנות קוד פתוח המחקים את הרוקו ודומיו שניתן להתקין על שרת VPS רגיל וכך ליהנות מכל העולמות
                        • Serverless באופן כללי (לדוגמה: קוברנטיס): שזה אומר טכנולוגיית מחשוב ענן שבה מריצים קוד "רגיל" אבל התשתית מנוהל באופן אוטומטי וסלקלביליטי לפי הצורך על ידי ספק הענן. המשמעות מבחינת המתכנת היא שצריך לבנות את הקוד בצורה שלא תסתמך על state בין בקשות, כיוון שכל בקשה יכולה להגיע בכלל למופע אחר של אותו הקוד עם state שונה.
                        • Cloud Functions (לדוגמה: Cloudflare Workers, ‫amazon lambda, ‫Cyclic ז"ל (מבוסס על אמזון למבדה)): למעשה נגזרת של שיטת serverless עם הגבלות נוספות. זוהי גישה שבה המפתח כותב פונקציות קוד קטנות וממוקדות, שמופעלות מאפס בתגובה לאירועים מסוימים (בד"כ בקשות HTTP), ומוגבלות גם במשך זמן הריצה וגם בסוגי הruntime שנתמכים כמו פייתון, node, וכן הלאה, תלוי במימוש של ספק הענן, וכמובן במגבלת הstate שהוא יורש מserverless רק בצורה חריפה יותר.
                        1. זה לא מדויק שאין דרך להתחיל להשתמש בשרת ללא תעודת אבטחה דומיין וDNS כי אפשר לגשת ישירות לIP של השרת
                        2. בשרת VPS של חברה נורמלית (לאפוקי contabo לדוגמה. אין שום סיבה לבעל שרת "רגיל" להשתמש בקונטאבו!) הכל גמיש ובלחיצת כפתור, הדבר היחיד שדורש שרת חדש הוא מעבר לשרת עם נפח דיסק קטן יותר. הוספת דיסק נוסף/הגדלת מפרט מכל סוג/הקטנת מפרט כל עוד זה לא לתצורה עם דיסק קטן יותר - תדרוש כמה קליקים בממשק והפעלה מחדש בלבד.

                        Don’t comment bad code — rewrite it." — Brian W. Kernighan and P. J. Plaugher"
                        טיפים

                        תגובה 1 תגובה אחרונה
                        4
                        • dovidD מנותק
                          dovidD מנותק
                          dovid ניהול
                          כתב ב נערך לאחרונה על ידי
                          #12

                          @TG תבדקו את cloudways, הם נראים לי ידידותיים בשירותים מנוהלים, המסלול שלהם נראה לי כולל מסד נתונים ואירוח לאפליקציית nodejs.

                          מנטור אישי למתכנתים (ולא רק) – להתקדם לשלב הבא!

                          בכל נושא אפשר ליצור קשר dovid@tchumim.com

                          ש תגובה 1 תגובה אחרונה
                          0
                          • ש מנותק
                            ש מנותק
                            שטייגע'ניסט גרפי
                            השיב לdovid ב נערך לאחרונה על ידי
                            #13

                            @dovid כתב בהאם איחסון בענן של מערכת שמורכבת משפות : Node.js MySql React אמורה לעלות מינימום 40-50 דולר לחודש?:

                            @TG תבדקו את cloudways, הם נראים לי ידידותיים בשירותים מנוהלים, המסלול שלהם נראה לי כולל מסד נתונים ואירוח לאפליקציית nodejs.

                            אני בדקתי והם ממש ידידותיים, וכן צדקת , כולל מס''ד נתונים ואירוח..
                            יש עוד כמה פלוסים...

                            תגובה 1 תגובה אחרונה
                            1

                            בא תתחבר לדף היומי!
                            • התחברות

                            • אין לך חשבון עדיין? הרשמה

                            • התחברו או הירשמו כדי לחפש.
                            • פוסט ראשון
                              פוסט אחרון
                            0
                            • דף הבית
                            • קטגוריות
                            • פוסטים אחרונים
                            • משתמשים
                            • חיפוש
                            • חוקי הפורום