অ্যাপ ইঞ্জিন স্ট্যান্ডার্ড পরিবেশে একটি স্প্রিং বুট অ্যাপ স্থাপন করুন

অ্যাপ ইঞ্জিন অ্যাপ্লিকেশনগুলি তৈরি করা সহজ, রক্ষণাবেক্ষণ করা সহজ এবং আপনার ট্রাফিক এবং ডেটা সঞ্চয়স্থানের পরিবর্তনের প্রয়োজনে স্কেল করা সহজ। অ্যাপ ইঞ্জিনের সাথে, বজায় রাখার জন্য কোন সার্ভার নেই। আপনি কেবল আপনার অ্যাপ আপলোড করুন এবং এটি যেতে প্রস্তুত।

অ্যাপ ইঞ্জিন অ্যাপগুলি স্বয়ংক্রিয়ভাবে আগত ট্র্যাফিকের উপর ভিত্তি করে স্কেল করে। লোড ব্যালেন্সিং, মাইক্রোসার্ভিসেস, অনুমোদন, SQL এবং NoSQL ডাটাবেস, মেমরি ক্যাশিং, ট্রাফিক স্প্লিটিং, লগিং, সার্চ, ভার্সনিং, রোলআউটস এবং রোলব্যাকস এবং সিকিউরিটি স্ক্যানিং সবই স্থানীয়ভাবে সমর্থিত এবং অত্যন্ত কাস্টমাইজযোগ্য।

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

আপনি অ্যাপ ইঞ্জিন স্ট্যান্ডার্ড পরিবেশে একটি স্প্রিং বুট অ্যাপ স্থাপন করতে শিখবেন। স্ট্যান্ডার্ড এনভায়রনমেন্ট শূন্যে নেমে আসে যখন কেউ এটি ব্যবহার করে না এবং স্বয়ংক্রিয়ভাবে বেড়ে যায়!

পূর্বশর্ত

  • জাভা প্রোগ্রামিং ভাষা এবং সরঞ্জামগুলির সাথে পরিচিতি
  • স্ট্যান্ডার্ড লিনাক্স টেক্সট এডিটর, যেমন Vim, Emacs এবং ন্যানো সম্পর্কে জ্ঞান

আপনি কি করবেন

  • অ্যাপ ইঞ্জিনে কীভাবে একটি স্প্রিং বুট জাভা অ্যাপ তৈরি করবেন

আপনি কি প্রয়োজন হবে

  • একটি Google ক্লাউড প্রকল্প
  • একটি ব্রাউজার, যেমন Google Chrome

স্ব-গতিসম্পন্ন পরিবেশ সেটআপ

  1. ক্লাউড কনসোলে সাইন ইন করুন এবং একটি নতুন প্রকল্প তৈরি করুন বা বিদ্যমান একটি পুনরায় ব্যবহার করুন৷ (যদি আপনার ইতিমধ্যেই একটি Gmail বা G Suite অ্যাকাউন্ট না থাকে তবে আপনাকে অবশ্যই একটি তৈরি করতে হবে।)

প্রজেক্ট আইডিটি মনে রাখবেন, সমস্ত Google ক্লাউড প্রকল্প জুড়ে একটি অনন্য নাম (উপরের নামটি ইতিমধ্যে নেওয়া হয়েছে এবং আপনার জন্য কাজ করবে না, দুঃখিত!)। এটি পরে এই কোডল্যাবে PROJECT_ID হিসাবে উল্লেখ করা হবে।

  1. এর পরে, Google ক্লাউড সংস্থানগুলি ব্যবহার করার জন্য আপনাকে ক্লাউড কনসোলে বিলিং সক্ষম করতে হবে৷

এই কোডল্যাবের মাধ্যমে চালানোর জন্য আপনার কয়েক ডলারের বেশি খরচ করা উচিত নয়, তবে আপনি যদি আরও সংস্থান ব্যবহার করার সিদ্ধান্ত নেন বা আপনি যদি সেগুলি চলমান রেখে দেন তবে এটি আরও বেশি হতে পারে।

Google ক্লাউডের নতুন ব্যবহারকারীরা $300 বিনামূল্যের ট্রায়ালের জন্য যোগ্য৷

মেঘের শেল

আপনি Cloud Shell ব্যবহার করবেন, Google ক্লাউডে চলমান একটি কমান্ড-লাইন পরিবেশ।

ক্লাউড শেল সক্রিয় করুন

  1. ক্লাউড কনসোল থেকে, ক্লাউড শেল সক্রিয় করুন ক্লিক করুন .

আপনি যদি আগে কখনও ক্লাউড শেল শুরু না করে থাকেন, তাহলে আপনাকে একটি মধ্যবর্তী স্ক্রীন (ভাঁজের নীচে) উপস্থাপন করা হবে যা বর্ণনা করে। যদি এটি হয়, তবে চালিয়ে যান ক্লিক করুন (এবং আপনি এটি আর কখনও দেখতে পাবেন না)। এককালীন স্ক্রীনটি দেখতে কেমন তা এখানে রয়েছে:

ক্লাউড শেলের সাথে সংযোগ করতে এবং সংযোগ করতে এটির মাত্র কয়েক মুহূর্ত লাগবে৷

এই ভার্চুয়াল মেশিনটি আপনার প্রয়োজনীয় সমস্ত ডেভেলপমেন্ট টুল দিয়ে লোড করা হয়েছে। এটি একটি ক্রমাগত 5GB হোম ডিরেক্টরি অফার করে এবং Google ক্লাউডে চলে, যা নেটওয়ার্ক কর্মক্ষমতা এবং প্রমাণীকরণকে ব্যাপকভাবে উন্নত করে। এই কোডল্যাবে আপনার অনেক কাজ, যদি সব না হয়, শুধুমাত্র একটি ব্রাউজার বা আপনার Chromebook দিয়ে করা যেতে পারে।

একবার ক্লাউড শেলের সাথে সংযুক্ত হয়ে গেলে, আপনি দেখতে পাবেন যে আপনি ইতিমধ্যেই প্রমাণীকরণ করেছেন এবং প্রকল্পটি ইতিমধ্যে আপনার প্রকল্প আইডিতে সেট করা আছে।

  1. আপনি প্রমাণীকৃত কিনা তা নিশ্চিত করতে ক্লাউড শেলে নিম্নলিখিত কমান্ডটি চালান:
gcloud auth list

কমান্ড আউটপুট

 Credentialed Accounts
ACTIVE  ACCOUNT
*       <my_account>@<my_domain.com>

To set the active account, run:
    $ gcloud config set account `ACCOUNT`
gcloud config list project

কমান্ড আউটপুট

[core]
project = <PROJECT_ID>

যদি এটি না হয়, আপনি এই কমান্ড দিয়ে এটি সেট করতে পারেন:

gcloud config set project <PROJECT_ID>

কমান্ড আউটপুট

Updated property [core/project].

ক্লাউড শেল চালু হওয়ার পরে, আপনি স্প্রিং ইনিশিয়ালাইজারের সাথে একটি নতুন স্প্রিং বুট অ্যাপ তৈরি করতে কমান্ড লাইন ব্যবহার করতে পারেন।

$ curl https://start.spring.io/starter.tgz \
  -d bootVersion=2.1.8.RELEASE \
  -d dependencies=web \
  -d baseDir=gae-standard-example | tar -xzvf -
$ cd gae-standard-example

একটি জাভা সার্ভার অ্যাপ স্থাপন করার দুটি উপায় রয়েছে - হয় Maven অ্যাপ ইঞ্জিন প্লাগইন বা গ্রেডল অ্যাপ ইঞ্জিন প্লাগইন ব্যবহার করে, অথবা war প্যাকেজ ডিরেক্টরি স্থাপন করে। অ্যাপটি স্থাপন করতে আপনি Maven অ্যাপ ইঞ্জিন প্লাগইন ব্যবহার করবেন।

Maven অ্যাপ ইঞ্জিন প্লাগইন যোগ করুন

একটি Google ক্লাউড প্লাগইন অন্তর্ভুক্ত করতে pom.xml আপডেট করুন যা স্থাপন প্রক্রিয়াকে সহজ করে। আপনি ফাইলটি সম্পাদনা করতে Vim, ন্যানো বা Emacs ব্যবহার করতে পারেন।

pom.xml

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" ...>
  ...
  <build>
    <plugins>
      ...
      <plugin>
        <groupId>com.google.cloud.tools</groupId>
        <artifactId>appengine-maven-plugin</artifactId>
        <version>2.1.0</version>
        <configuration>
          <version>1</version>
          <projectId>GCLOUD_CONFIG</projectId>
        </configuration>
      </plugin>
      ...
    </plugins>
  </build>
</project>
  1. অ্যাপ ইঞ্জিন স্ট্যান্ডার্ড পরিবেশে অ্যাপটি স্থাপন করতে, আপনাকে অবশ্যই একটি নতুন src/main/appengine/app.yaml বর্ণনাকারী ফাইল তৈরি করতে হবে।
$ mkdir -p src/main/appengine/
$ touch src/main/appengine/app.yaml
  1. src/main/appengine/app.yaml ফাইলটি সম্পাদনা করুন এবং নিম্নলিখিত বিষয়বস্তু যোগ করুন:

src/main/appengine/app.yaml

runtime: java11
instance_class: F4

একটি নতুন কন্ট্রোলার যোগ করুন যা "hello world!" DemoApplication.java এ।

src/main/java/com/example/demo/DemoApplication.java

package com.example.demo;

...

// Add imports
import org.springframework.web.bind.annotation.*;

@SpringBootApplication
@RestController
public class DemoApplication {
  public static void main(String[] args) {
    SpringApplication.run(DemoApplication.class, args);
  }

  @GetMapping("/")
  public String hello() {
    return "hello world!";
  }
}
  1. আপনি স্প্রিং বুট প্লাগইন দিয়ে স্প্রিং বুট অ্যাপটি শুরু করতে পারেন:
$ ./mvnw -DskipTests spring-boot:run
  1. অ্যাপটি শুরু হওয়ার পরে, ওয়েব প্রিভিউ ক্লিক করুন ক্লাউড শেল টুলবারে এবং পোর্ট 8080-এ পূর্বরূপ নির্বাচন করুন।

আপনার ব্রাউজারে একটি ট্যাব খোলে এবং আপনি যে সার্ভারটি শুরু করেছেন তার সাথে সংযোগ স্থাপন করে।

  1. প্রথমে, অ্যাপ ইঞ্জিন অ্যাপগুলি চালাতে সক্ষম হওয়ার জন্য প্রকল্পটি শুরু করুন। এছাড়াও, মার্কিন যুক্তরাষ্ট্রের কেন্দ্রীয় অঞ্চলে চালানোর জন্য প্রকল্পটি শুরু করুন।
$ gcloud app create --region us-central
You are creating an app for project [...].
WARNING: Creating an App Engine application for a project is irreversible and the region
cannot be changed. More information about regions is at
https://cloud.google.com/appengine/docs/locations
  1. তারপর, mvn appengine:deploy চালিয়ে অ্যাপ ইঞ্জিন স্ট্যান্ডার্ড পরিবেশে আপনার অ্যাপ স্থাপন করুন।
$ ./mvnw -DskipTests package appengine:deploy
... first time deploy may take a couple of minutes
  1. অ্যাপটি মোতায়েন করার পরে, আপনি আপনার ওয়েব ব্রাউজারে http://<project-id>.appspot.com খুলে এটি দেখতে পারেন বা ক্লাউড শেল-এ নিম্নলিখিত কমান্ডটি ব্যবহার করতে পারেন:
$ gcloud app browse
... [It may print out the URL for your app]

আপনি আপনার প্রথম অ্যাপ ইঞ্জিন ওয়েব অ্যাপ লিখতে শিখেছেন!

আরও জানুন