Cloud API-ների վերջնական ուղեցույց


Եթե դուք երբևէ օգտագործել եք ամպային ծառայություն, հավանաբար ինչ-որ պահի շփվել եք API-ի (Application Programming Interface) հետ: Cloud API-ները ծրագրավորողներին հնարավորություն են տալիս ծրագրային կերպով համագործակցել ամպային ծառայությունների հետ: Այս ուղեցույցում մենք կուսումնասիրենք ամպային API-ների աշխարհը և կսովորենք, թե ինչպես են դրանք աշխատում, ինչու են դրանք կարևոր և ինչպես օգտագործել դրանք:

Ի՞նչ է Cloud API-ն:

Cloud API-ն ինտերֆեյս է, որը ծրագրավորողներին հնարավորություն է տալիս ծրագրային կերպով համագործակցել ամպային ծառայությունների հետ: Ամպային ծառայության գրաֆիկական ինտերֆեյսի (GUI) միջոցով մուտք գործելու փոխարեն մշակողները կարող են օգտագործել API՝ ծրագրի կամ սցենարի միջոցով ամպային ծառայության հետ փոխազդելու համար: Սա նշանակում է, որ մշակողները կարող են ավտոմատացնել առաջադրանքները, ինտեգրել ամպային ծառայություններն այլ հավելվածների հետ և ստեղծել հատուկ լուծումներ, որոնք բավարարում են իրենց յուրահատուկ կարիքները:

Ինչու են Cloud API-ները կարևոր:

Քանի որ ամպային հաշվարկները շարունակում են ժողովրդականություն վայելել, ամպային API-ների նշանակությունը միայն կշարունակի աճել: Մշակողները պետք է ծանոթ լինեն ամպային API-ներին և իմանան, թե ինչպես դրանք արդյունավետ օգտագործել՝ մասշտաբային, հուսալի և անվտանգ ամպային հավելվածներ ստեղծելու համար:

Ամպային API ընտրելիս կարևոր է հաշվի առնել այնպիսի գործոններ, ինչպիսիք են ֆունկցիոնալությունը, օգտագործման հեշտությունը և անվտանգությունը: Կարևոր է նաև ընտրել API, որը լավ փաստաթղթավորված է և ունի մշակողների ակտիվ համայնք, որը կարող է աջակցություն և ուղղորդում տրամադրել:

Անկախ նրանից, թե դուք փոքրածավալ հավելված եք ստեղծում, թե լայնածավալ ձեռնարկության լուծում, ամպային API-ները կարող են օգնել ձեզ հասնել ձեր նպատակներին: Օգտագործելով ամպային API-ների հզորությունը՝ դուք կարող եք պարզեցնել ձեր զարգացման գործընթացը, բարելավել ձեր հավելվածի աշխատանքը և ապահովել ավելի լավ օգտատերերի փորձ:

Ամպային API-ների տեսակները

Ամպային API-ների մի քանի տեսակներ կան, ներառյալ −

REST API-ներ

REST (Representational State Transfer) API-ները ամպային API-ի ամենատարածված տեսակն են: Նրանք օգտագործում են HTTP մեթոդներ (օրինակ՝ GET, POST, PUT և DELETE)՝ ամպային ծառայության հետ փոխազդելու համար։ REST API-ներն օգտագործում են URL՝ ռեսուրսները (օրինակ՝ օգտատերեր, ֆայլեր կամ վիրտուալ մեքենաներ) նույնականացնելու և JSON կամ XML՝ տվյալների փոխանակման համար:

SOAP API-ներ

SOAP (Simple Object Access Protocol) API-ները ամպային API-ի մեկ այլ տեսակ են: Նրանք օգտագործում են XML՝ տվյալների փոխանակման համար և պահանջում են հատուկ հաճախորդների գրադարան՝ ամպային ծառայության հետ փոխազդելու համար: SOAP API-ները սովորաբար օգտագործվում են ամպային ծառայության հետ ավելի բարդ փոխազդեցությունների համար, օրինակ՝ մեծ քանակությամբ տվյալներ ուղարկելու և ստանալու համար:

GraphQL API-ներ

GraphQL API-ները ամպային API-ի ավելի նոր տեսակ են, որոնք ապահովում են ամպային ծառայությունների հետ փոխգործակցության ավելի ճկուն միջոց: GraphQL API-ի միջոցով մշակողները կարող են նշել իրենց անհրաժեշտ ճշգրիտ տվյալները և ի պատասխան ստանալ միայն այդ տվյալները: Սա նվազեցնում է ցանցի միջոցով փոխանցվող տվյալների քանակը և կարող է բարելավել աշխատանքը:

Cloud API-ների առավելությունները

Cloud API-ներն ունեն մի քանի առավելություններ. Հետևյալ երեքն ամենակարևորն են.

Ավտոմատացում

Cloud API-ները ծրագրավորողներին հնարավորություն են տալիս ավտոմատացնել առաջադրանքները, որոնք ժամանակատար կամ սխալների հակված կլինեն ձեռքով կատարել: Օրինակ՝ մշակողը կարող է օգտագործել ամպային API՝ ավտոմատ կերպով վիրտուալ մեքենաներ տրամադրելու կամ նոր օգտվողներ ստեղծելու համար:

Ինտեգրում

Cloud API-ները ծրագրավորողներին հնարավորություն են տալիս ինտեգրել ամպային ծառայություններն այլ հավելվածների հետ: Օրինակ՝ ծրագրավորողը կարող է օգտագործել ամպային API՝ տվյալների բազայի կրկնօրինակը ավտոմատ կերպով ստեղծելու և ամպային պահեստավորման ծառայությունում պահելու համար:

Անհատականացում

Cloud API-ները ծրագրավորողներին հնարավորություն են տալիս ստեղծել հատուկ լուծումներ, որոնք բավարարում են իրենց յուրահատուկ կարիքները: Օրինակ՝ ծրագրավորողը կարող է օգտագործել ամպային API՝ ստեղծելու հատուկ վահանակ, որը ցուցադրում է տեղեկատվությունը բազմաթիվ ամպային ծառայություններից:

Օգտագործելով Cloud API-ներ

Ամպային API-ի օգտագործումը սովորաբար ներառում է հետևյալ քայլերը

Նույնականացում

Նախքան ամպային API-ն օգտագործելը, դուք պետք է նույնականացնեք ամպային ծառայության միջոցով: Սա սովորաբար ներառում է օգտվողի անուն և գաղտնաբառ, API բանալի կամ մուտքի նշան:

հարցումների ուղարկում

Նույնականացումից հետո կարող եք հարցումներ ուղարկել ամպային ծառայությանը: Հարցումները սովորաբար ներառում են URL, որը նույնականացնում է ռեսուրսը, որի հետ ցանկանում եք շփվել, և ցանկացած տվյալ, որը ցանկանում եք ուղարկել կամ ստանալ:

Պատասխանների ստացում

Երբ հարցում եք ուղարկում, ամպային ծառայությունը կպատասխանի տվյալների, որոնք կարող եք օգտագործել ձեր հավելվածում: Պատասխանները սովորաբար ներառում են JSON կամ XML ձևաչափով տվյալներ:

Cloud API-ի օրինակներ

Եկեք դիտարկենք գործող ամպային API-ների մի քանի օրինակներ:

Amazon Web Services (AWS) API

Amazon Web Services-ը (AWS) տրամադրում է REST API, որը ծրագրավորողներին հնարավորություն է տալիս շփվել իրենց ամպային ծառայությունների հետ, ինչպիսիք են EC2 (Elastic Compute Cloud) և S3 (Simple Storage Service): Ահա մի օրինակ, թե ինչպես օգտագործել AWS API-ն՝ նոր EC2 օրինակ ստեղծելու համար

import boto3

ec2 = boto3.client('ec2')
response = ec2.run_instances(
   ImageId='ami-0c55b159cbfafe1f0',
   InstanceType='t2.micro',
   MinCount=1,
   MaxCount=1
)

instance_id = response['Instances'][0]['InstanceId']
print(f'New EC2 instance created with ID {instance_id}')

Այս օրինակում մենք նախ ներմուծում ենք boto3 գրադարանը, որը պաշտոնական AWS SDK-ն է Python-ի համար: Այնուհետև մենք ստեղծում ենք ec2 հաճախորդի նոր օբյեկտ, որը կարող ենք օգտագործել EC2 ծառայության հետ փոխազդելու համար:

Հաջորդը, մենք կանչում ենք run_instances մեթոդը ec2 հաճախորդի օբյեկտի վրա՝ նոր EC2 օրինակ ստեղծելու համար: Մենք նշում ենք AMI ID-ն օրինակի պատկերի, օրինակի տեսակի և ստեղծվող օրինակների նվազագույն և առավելագույն քանակի համար:

Run_instances մեթոդը վերադարձնում է պատասխան օբյեկտ, որը պարունակում է տեղեկատվություն նորաստեղծ օրինակների մասին: Մենք պատասխանից հանում ենք օրինակի ID-ն և տպում այն վահանակում:

Google Cloud Platform (GCP) API

Google Cloud Platform-ը (GCP) տրամադրում է API-ների լայն շրջանակ, որը թույլ է տալիս ծրագրավորողներին շփվել իրենց ամպային ծառայությունների հետ, ներառյալ Google Cloud Storage-ը, Google Compute Engine-ը և Google Cloud Pub/Sub-ը: Ահա մի օրինակ, թե ինչպես օգտագործել GCP API-ն՝ Google Compute Engine-ում նոր օրինակ ստեղծելու համար −

from google.cloud import compute_v1
from google.oauth2 import service_account

creds = service_account.Credentials.from_service_account_file('path/to/credentials.json')
compute_client = compute_v1.InstancesClient(credentials=creds)

project_id = 'your-project-id'
zone = 'us-central1-a'
machine_type = 'n1-standard-1'
image_project = 'debian-cloud'
image_family = 'debian-10'

instance_config = {
   'name': 'test-instance',
   'machine_type': f'zones/{zone}/machineTypes/{machine_type}',
   'disks': [
      {
         'boot': True,
         'auto_delete': True,
         'initialize_params': {
            'source_image_project': image_project,
            'source_image_family': image_family,
         },
      },
   ],
}

operation = compute_client.insert(project=project_id, zone=zone, instance_resource=instance_config)
print(f'New instance created with name {instance_config["name"]} and operation ID {operation.operation_id}')

Այս օրինակում մենք նախ ներմուծում ենք անհրաժեշտ գրադարանները և ծառայության հաշվի ֆայլից ստեղծում հավատարմագրերի օբյեկտ: Այնուհետև մենք ստեղծում ենք նոր compute_client օբյեկտ, որը կարող ենք օգտագործել Google Compute Engine ծառայության հետ փոխազդելու համար:

Մենք նշում ենք նախագծի ID-ն, գոտին, մեքենայի տեսակը, պատկերի նախագիծը և պատկերի ընտանիքը այն օրինակի համար, որը ցանկանում ենք ստեղծել: Այնուհետև մենք ստեղծում ենք բառարան instance_config, որը պարունակում է օրինակի կազմաձևման տեղեկատվությունը: Սա ներառում է օրինակի անունը, մեքենայի տեսակը և սկավառակի մասին տեղեկությունները:

Վերջապես, մենք կանչում ենք ներդիր մեթոդը compute_client օբյեկտի վրա՝ նոր օրինակ ստեղծելու համար։ Մենք նշում ենք նախագծի ID-ն, գոտին և օրինակի կազմաձևման տվյալները: Ներդիր մեթոդը վերադարձնում է գործողության օբյեկտ, որը պարունակում է տեղեկատվություն գործողության մասին: Մենք հանում ենք օրինակի անունը և գործողության ID-ն գործողության օբյեկտից և տպում դրանք վահանակում:

Եզրակացություն

Ամպային API-ների այս վերջնական ուղեցույցում մենք ուսումնասիրել ենք, թե ինչ են ամպային API-ները, ինչպես են դրանք աշխատում և ինչու են դրանք կարևոր: Մենք նաև քննարկել ենք ամպային API-ների տարբեր տեսակները, ներառյալ REST API-ները, SDK-ները և CLI գործիքները:

Մենք նաև ներկայացրել ենք գործող ամպային API-ների օրինակներ, ներառյալ օրինակներ Amazon Web Services-ից (AWS) և Google Cloud Platform-ից (GCP): Այս օրինակները ցույց են տալիս, թե ինչպես ամպային API-ները կարող են օգտագործվել ամպային ռեսուրսները կառավարելու, առաջադրանքները ավտոմատացնելու և ամպային ծառայություններն այլ հավելվածների հետ ինտեգրելու համար:

Cloud API-ները ժամանակակից ամպային հաշվարկների կարևոր բաղադրիչն են և պարտադիր են ամպային ծառայությունների հետ աշխատող ցանկացած մշակողի համար: Հասկանալով, թե ինչպես են աշխատում ամպային API-ները և իմանալով, թե ինչպես դրանք արդյունավետ օգտագործել, դուք կարող եք ստեղծել հզոր և մասշտաբային ամպային հավելվածներ, որոնք բավարարում են ձեր օգտատերերի և ձեր բիզնեսի կարիքները: