கிளவுட் ஃபங்ஷன்ஸ் மற்றும் நிகழ்வு-சார்ந்த கட்டமைப்பின் ஆற்றலை ஆராயுங்கள்: அளவிடக்கூடிய, திறமையான மற்றும் செலவு குறைந்த பயன்பாடுகளை உருவாக்குவது எப்படி என்பதை அறியுங்கள். பயன்பாட்டு வழக்குகள், சிறந்த நடைமுறைகள் மற்றும் நிஜ-உலக உதாரணங்களைக் கண்டறியுங்கள்.
கிளவுட் ஃபங்ஷன்ஸ்: நிகழ்வு-சார்ந்த கட்டமைப்பில் ஒரு ஆழமான பார்வை
இன்றைய மாறும் தொழில்நுட்ப உலகில், வணிகங்கள் தங்கள் செயல்பாடுகளை மேம்படுத்தவும், அளவிடுதலை அதிகரிக்கவும் மற்றும் செலவுகளைக் குறைக்கவும் தொடர்ந்து வழிகளைத் தேடுகின்றன. சமீபத்திய ஆண்டுகளில் மிகுந்த பிரபலம் பெற்ற ஒரு கட்டமைப்பு நிகழ்வு-சார்ந்த கட்டமைப்பு ஆகும், மேலும் இந்த மாதிரியின் மையத்தில் கிளவுட் ஃபங்ஷன்ஸ் உள்ளன. இந்த விரிவான வழிகாட்டி கிளவுட் ஃபங்ஷன்ஸின் முக்கிய கருத்துக்களை ஆராய்ந்து, நிகழ்வு-சார்ந்த கட்டமைப்பில் அவற்றின் பங்கை ஆராய்ந்து, அவற்றின் நன்மைகளை তুলেக்காட்டி, அவற்றின் ஆற்றலை விளக்க நடைமுறை உதாரணங்களை வழங்கும்.
கிளவுட் ஃபங்ஷன்ஸ் என்றால் என்ன?
கிளவுட் ஃபங்ஷன்ஸ் என்பவை சர்வர்லெஸ், நிகழ்வு-சார்ந்த கணினி சேவைகளாகும், அவை சர்வர்கள் அல்லது உள்கட்டமைப்பை நிர்வகிக்காமல் நிகழ்வுகளுக்கு பதிலளிக்கும் வகையில் குறியீட்டை இயக்க உங்களை அனுமதிக்கின்றன. அவை சர்வர்லெஸ் கம்ப்யூட்டிங்கின் முக்கிய அங்கமாகும், இது டெவலப்பர்கள் குறிப்பிட்ட வணிக தர்க்கத்தை நிவர்த்தி செய்யும் குறியீட்டை எழுதுவதில் மட்டுமே கவனம் செலுத்த உதவுகிறது. தேவைப்படும்போது மட்டுமே செயலில் ஈடுபடும் இலகுரக, தேவைக்கேற்ப குறியீட்டுத் துணுக்குகளாக அவற்றை கற்பனை செய்து பாருங்கள்.
இதை இப்படி நினைத்துப் பாருங்கள்: ஒரு பாரம்பரிய சர்வர் அடிப்படையிலான பயன்பாட்டிற்கு நீங்கள் சர்வர்களை வழங்கி பராமரிக்க வேண்டும், இயக்க முறைமைகளை நிறுவ வேண்டும், மற்றும் முழு உள்கட்டமைப்பு அடுக்கையும் நிர்வகிக்க வேண்டும். கிளவுட் ஃபங்ஷன்ஸ் மூலம், அந்த சிக்கலான அனைத்தும் நீக்கப்படுகிறது. நீங்கள் உங்கள் செயல்பாட்டை எழுதுகிறீர்கள், அதன் தூண்டுதலை (அதை செயல்படுத்தும் நிகழ்வு) வரையறுக்கிறீர்கள், மற்றும் அதை கிளவுட்டிற்குப் பயன்படுத்துகிறீர்கள். கிளவுட் வழங்குநர் அளவிடுதல், பேட்சிங் மற்றும் அடிப்படை உள்கட்டமைப்பை நிர்வகித்தல் ஆகியவற்றை கவனித்துக் கொள்கிறார்.
கிளவுட் ஃபங்ஷன்ஸின் முக்கிய பண்புகள்:
- சர்வர்லெஸ்: சர்வர் மேலாண்மை தேவையில்லை. கிளவுட் வழங்குநர் அனைத்து உள்கட்டமைப்பையும் கையாளுகிறார்.
- நிகழ்வு-சார்ந்தது: ஒரு கோப்பு பதிவேற்றம், தரவுத்தள மாற்றம் அல்லது HTTP கோரிக்கை போன்ற நிகழ்வுகளால் செயல்பாடுகள் தூண்டப்படுகின்றன.
- அளவிடக்கூடியது: கிளவுட் ஃபங்ஷன்ஸ் மாறுபட்ட பணிச்சுமைகளைக் கையாள தானாகவே அளவிடப்படுகின்றன, உச்ச நேரங்களில் கூட உகந்த செயல்திறனை உறுதி செய்கின்றன.
- பயன்பாட்டிற்கு ஏற்ப கட்டணம்: உங்கள் செயல்பாடுகள் இயங்கும்போது நுகரப்படும் கணினி நேரத்திற்கு மட்டுமே நீங்கள் பணம் செலுத்துகிறீர்கள்.
- நிலைகளற்றது: ஒவ்வொரு செயல்பாட்டின் செயலாக்கமும் சுயாதீனமானது மற்றும் நிலையான நிலையைச் சார்ந்து இல்லை.
நிகழ்வு-சார்ந்த கட்டமைப்பைப் புரிந்துகொள்ளுதல்
நிகழ்வு-சார்ந்த கட்டமைப்பு (EDA) என்பது ஒரு மென்பொருள் கட்டமைப்பு மாதிரியாகும், இதில் கூறுகள் நிகழ்வுகளை உருவாக்குதல் மற்றும் நுகர்வதன் மூலம் ஒன்றுக்கொன்று தொடர்பு கொள்கின்றன. ஒரு நிகழ்வு என்பது ஒரு பயனர் கோப்பை பதிவேற்றுவது, ஒரு புதிய ஆர்டர் செய்யப்படுவது, அல்லது ஒரு சென்சார் வாசிப்பு ஒரு வரம்பை மீறுவது போன்ற ஒரு குறிப்பிடத்தக்க நிலை மாற்றம் ஆகும்.
ஒரு EDA அமைப்பில், கூறுகள் (அல்லது சேவைகள்) ஒன்றுக்கொன்று நேரடியாக அழைக்காது. அதற்கு பதிலாக, அவை நிகழ்வுகளை ஒரு நிகழ்வுப் பேருந்து அல்லது செய்தி வரிசைக்கு வெளியிடுகின்றன, மேலும் பிற கூறுகள் அந்த நிகழ்வுகளைப் பெற்று அவற்றைச் செயலாக்க அந்த நிகழ்வுகளுக்கு சந்தா செலுத்துகின்றன. கூறுகளின் இந்த découpling பல நன்மைகளை வழங்குகிறது:
- தளர்வான இணைப்பு: கூறுகள் சுயாதீனமானவை மற்றும் ஒன்றுக்கொன்று பாதிக்காமல் சுயாதீனமாக உருவாகலாம்.
- அளவிடுதல்: கூறுகளை அவற்றின் நிகழ்வு செயலாக்க தேவைகளின் அடிப்படையில் சுயாதீனமாக அளவிட முடியும்.
- நெகிழ்வுத்தன்மை: ஒரு கூறு தோல்வியுற்றால், அது முழு அமைப்பையும் بالضرورة செயலிழக்கச் செய்யாது.
- நிகழ்நேர செயலாக்கம்: நிகழ்வுகளை ஏறக்குறைய நிகழ்நேரத்தில் செயலாக்க முடியும், இது நிலை மாற்றங்களுக்கு உடனடி பதில்களை செயல்படுத்துகிறது.
EDA இல் கிளவுட் ஃபங்ஷன்ஸின் பங்கு
கிளவுட் ஃபங்ஷன்ஸ் EDA அமைப்புகளுக்கு சிறந்த கட்டுமானத் தொகுதிகளாக செயல்படுகின்றன. அவை இதற்காகப் பயன்படுத்தப்படலாம்:
- நிகழ்வுகளை உருவாக்குதல்: ஒரு கிளவுட் ஃபங்ஷன் ஒரு பணியை முடிக்கும்போது ஒரு நிகழ்வை உருவாக்க முடியும், இது பிற கூறுகளுக்கு அந்த பணி முடிந்துவிட்டது என்று சமிக்ஞை செய்கிறது.
- நிகழ்வுகளை நுகர்வது: ஒரு கிளவுட் ஃபங்ஷன் நிகழ்வுகளுக்கு சந்தா செலுத்தி அந்த நிகழ்வுகளுக்கு பதிலளிக்கும் வகையில் செயல்களைச் செய்ய முடியும்.
- நிகழ்வுகளை மாற்றுதல்: ஒரு கிளவுட் ஃபங்ஷன் நிகழ்வுத் தரவை பிற கூறுகளால் நுகரப்படுவதற்கு முன்பு மாற்ற முடியும்.
- நிகழ்வுகளை வழிநடத்துதல்: ஒரு கிளவுட் ஃபங்ஷன் நிகழ்வுகளை அவற்றின் உள்ளடக்கம் அல்லது பிற அளவுகோல்களின் அடிப்படையில் வெவ்வேறு இடங்களுக்கு வழிநடத்த முடியும்.
கிளவுட் ஃபங்ஷன்ஸ் மற்றும் நிகழ்வு-சார்ந்த கட்டமைப்பைப் பயன்படுத்துவதன் நன்மைகள்
கிளவுட் ஃபங்ஷன்ஸ் மற்றும் EDA வை ஏற்றுக்கொள்வது அனைத்து அளவிலான நிறுவனங்களுக்கும் பல நன்மைகளை வழங்குகிறது:
- குறைக்கப்பட்ட உள்கட்டமைப்பு செலவுகள்: சர்வர் நிர்வாகத்தை நீக்குவது செயல்பாட்டு செலவுகளை கணிசமாகக் குறைக்கிறது. நீங்கள் உண்மையில் பயன்படுத்தும் கணினி நேரத்திற்கு மட்டுமே பணம் செலுத்துகிறீர்கள்.
- அதிகரித்த அளவிடுதல்: கிளவுட் ஃபங்ஷன்ஸ் தானாகவே ஏற்ற இறக்கமான பணிச்சுமைகளைக் கையாள அளவிடப்படுகின்றன, இது உங்கள் பயன்பாடுகள் உச்ச கோரிக்கையின் போதும் பதிலளிக்கக்கூடியதாக இருப்பதை உறுதி செய்கிறது. உதாரணமாக, ஒரு மின்-வணிக தளம் விற்பனை நிகழ்வுகளின் போது போக்குவரத்து அதிகரிப்பை கைமுறையான தலையீடு இல்லாமல் எளிதாக கையாள முடியும்.
- வேகமான மேம்பாட்டுச் சுழற்சிகள்: சர்வர்லெஸ் மேம்பாடு மேம்பாட்டு செயல்முறையை எளிதாக்குகிறது, இது டெவலப்பர்கள் உள்கட்டமைப்பை நிர்வகிப்பதை விட குறியீட்டை எழுதுவதில் கவனம் செலுத்த அனுமதிக்கிறது. இது வேகமான மேம்பாட்டுச் சுழற்சிகளுக்கும் விரைவான சந்தைப்படுத்தலுக்கும் வழிவகுக்கிறது.
- மேம்படுத்தப்பட்ட நெகிழ்வுத்தன்மை: EDA இன் découple செய்யப்பட்ட தன்மை பயன்பாடுகளை தோல்விகளுக்கு அதிக நெகிழ்வுத்தன்மை உடையதாக ஆக்குகிறது. ஒரு செயல்பாடு தோல்வியுற்றால், அது அமைப்பின் பிற பகுதிகளை بالضرورة பாதிக்காது.
- மேம்படுத்தப்பட்ட சுறுசுறுப்பு: EDA நிறுவனங்கள் மாறும் வணிகத் தேவைகளுக்கு விரைவாக மாற்றியமைக்க உதவுகிறது. ஏற்கனவே உள்ள செயல்பாட்டை சீர்குலைக்காமல் புதிய அம்சங்கள் மற்றும் சேவைகளைச் சேர்க்கலாம் அல்லது மாற்றலாம். ஒரு உலகளாவிய தளவாட நிறுவனம் ஆர்டர் நிகழ்வுகளுக்கு சந்தா செலுத்தும் ஒரு புதிய கிளவுட் ஃபங்ஷனைச் சேர்ப்பதன் மூலம் ஒரு புதிய விநியோக கூட்டாளரை எளிதாக ஒருங்கிணைப்பதை கற்பனை செய்து பாருங்கள்.
- புதுமைகளில் கவனம்: உள்கட்டமைப்பு நிர்வாகத்தை ஒப்படைப்பதன் மூலம், டெவலப்பர்கள் புதுமைகளில் கவனம் செலுத்தி வணிக மதிப்பை உருவாக்கும் புதிய அம்சங்களை உருவாக்க முடியும்.
கிளவுட் ஃபங்ஷன்ஸ் மற்றும் நிகழ்வு-சார்ந்த கட்டமைப்பிற்கான பொதுவான பயன்பாட்டு வழக்குகள்
கிளவுட் ஃபங்ஷன்ஸ் மற்றும் EDA பல்வேறு தொழில்களில் பரந்த அளவிலான பயன்பாட்டு வழக்குகளுக்கு பொருந்தும்:
- நிகழ்நேர தரவு செயலாக்கம்: IoT சாதனங்கள், சமூக ஊடக ஊட்டங்கள் அல்லது நிதிச் சந்தைகளிலிருந்து வரும் ஸ்ட்ரீமிங் தரவைச் செயலாக்குதல். உதாரணமாக, உலகெங்கிலும் உள்ள வானிலை நிலையங்களிலிருந்து வரும் தரவை நிகழ்நேரத்தில் பகுப்பாய்வு செய்ய கிளவுட் ஃபங்ஷன்ஸைப் பயன்படுத்தும் ஒரு உலகளாவிய வானிலை முன்னறிவிப்பு சேவை.
- படம் மற்றும் வீடியோ செயலாக்கம்: கிளவுட் சேமிப்பக சேவைக்கு பதிவேற்றப்பட்ட படங்கள் மற்றும் வீடியோக்களை தானாக மறுஅளவிடுதல், மாற்றுக்குறியாக்கம் செய்தல் அல்லது பகுப்பாய்வு செய்தல். ஒரு புகைப்பட இணையதளம் சிறுபடங்களை தானாக உருவாக்க மற்றும் வெவ்வேறு சாதனங்களுக்கு படங்களை மேம்படுத்த கிளவுட் ஃபங்ஷன்ஸைப் பயன்படுத்துகிறது.
- வெப்ஹூக்குகள்: GitHub, Stripe அல்லது Twilio போன்ற மூன்றாம் தரப்பு சேவைகளிலிருந்து வரும் நிகழ்வுகளுக்கு பதிலளித்தல். ஒரு சர்வதேச திட்ட மேலாண்மை கருவி ஒரு புதிய பணி உருவாக்கப்படும்போது அல்லது ஒரு காலக்கெடு நெருங்கும்போது அறிவிப்புகளை அனுப்ப கிளவுட் ஃபங்ஷன்ஸைப் பயன்படுத்துகிறது.
- சாட்போட்கள்: நிகழ்நேரத்தில் பயனர் உள்ளீட்டிற்கு பதிலளிக்கும் உரையாடல் இடைமுகங்களை உருவாக்குதல். ஒரு பன்மொழி வாடிக்கையாளர் ஆதரவு சாட்போட் பயனர் கேள்விகளைச் செயலாக்கவும் மற்றும் தொடர்புடைய பதில்களை வழங்கவும் கிளவுட் ஃபங்ஷன்ஸைப் பயன்படுத்துகிறது.
- மொபைல் பின்தளம்: பயனர் அங்கீகாரம், தரவு சேமிப்பகம் மற்றும் புஷ் அறிவிப்புகள் போன்ற மொபைல் பயன்பாடுகளுக்கு பின்தள சேவைகளை வழங்குதல். ஒரு உலகளாவிய உடற்பயிற்சி பயன்பாடு பயனர் அங்கீகாரத்தைக் கையாளவும் மற்றும் உடற்பயிற்சி தரவைச் சேமிக்கவும் கிளவுட் ஃபங்ஷன்ஸைப் பயன்படுத்துகிறது.
- தரவு குழாய்கள்: ஒரு தரவுத்தளத்திலிருந்து ஒரு தரவுக் கிடங்கிற்கு தரவை நகர்த்துவது போன்ற வெவ்வேறு அமைப்புகளுக்கு இடையில் தரவுப் பாய்வுகளை ஒழுங்கமைத்தல். ஒரு உலகளாவிய ஆராய்ச்சி நிறுவனம் பல்வேறு மூலங்களிலிருந்து அறிவியல் தரவை ஒரு மைய தரவுக் களஞ்சியத்திற்கு நகர்த்த கிளவுட் ஃபங்ஷன்ஸைப் பயன்படுத்துகிறது.
- IoT பயன்பாடுகள்: சென்சார்கள், ஆக்சுவேட்டர்கள் மற்றும் ஸ்மார்ட் சாதனங்கள் போன்ற இணைக்கப்பட்ட சாதனங்களிலிருந்து தரவைச் செயலாக்குதல். ஒரு உலகளாவிய விவசாய நிறுவனம் உலகெங்கிலும் உள்ள பண்ணைகளிலிருந்து சென்சார் தரவை பகுப்பாய்வு செய்து நீர்ப்பாசனம் மற்றும் உரமிடுதலை மேம்படுத்த கிளவுட் ஃபங்ஷன்ஸைப் பயன்படுத்துகிறது.
- மின்-வணிகம்: ஆர்டர்களைச் செயலாக்குதல், சரக்குகளை நிர்வகித்தல் மற்றும் நிகழ்நேரத்தில் அறிவிப்புகளை அனுப்புதல்.
- மோசடி கண்டறிதல்: மோசடியான நடவடிக்கைகளைக் கண்டறிந்து தடுக்க நிகழ்நேரத்தில் பரிவர்த்தனைகளை பகுப்பாய்வு செய்தல். ஒரு உலகளாவிய கட்டணச் செயலி மோசடியான பரிவர்த்தனைகளைக் கண்டறிந்து தடுக்க கிளவுட் ஃபங்ஷன்ஸைப் பயன்படுத்துகிறது.
கிளவுட் ஃபங்ஷன்ஸ் செயல்பாட்டில் உள்ள நடைமுறை உதாரணங்கள்
கிளவுட் ஃபங்ஷன்ஸ் நிஜ-உலகப் பிரச்சனைகளைத் தீர்க்க எவ்வாறு பயன்படுத்தப்படலாம் என்பதற்கான சில உறுதியான உதாரணங்களை ஆராய்வோம்.
உதாரணம் 1: கிளவுட் ஸ்டோரேஜ் பதிவேற்றத்தில் பட மறுஅளவிடுதல்
பயனர்கள் படங்களை பதிவேற்றக்கூடிய ஒரு இணையதளம் உங்களிடம் இருப்பதாக கற்பனை செய்து பாருங்கள். வெவ்வேறு காட்சி அளவுகளுக்கு சிறுபடங்களை உருவாக்க இந்த படங்களை தானாக மறுஅளவிட விரும்புகிறீர்கள். ஒரு கிளவுட் ஸ்டோரேஜ் பதிவேற்ற நிகழ்வால் தூண்டப்பட்ட ஒரு கிளவுட் ஃபங்ஷனைப் பயன்படுத்தி இதை நீங்கள் அடையலாம்.
தூண்டுதல்: கிளவுட் ஸ்டோரேஜ் பதிவேற்ற நிகழ்வு
செயல்பாடு:
from google.cloud import storage
from PIL import Image
import io
def resize_image(event, context):
""கிளவுட் ஸ்டோரேஜில் பதிவேற்றப்பட்ட ஒரு படத்தை மறுஅளவிடுகிறது.""
bucket_name = event['bucket']
file_name = event['name']
if not file_name.lower().endswith(('.png', '.jpg', '.jpeg')):
return
storage_client = storage.Client()
bucket = storage_client.bucket(bucket_name)
blob = bucket.blob(file_name)
image_data = blob.download_as_bytes()
image = Image.open(io.BytesIO(image_data))
image.thumbnail((128, 128))
output = io.BytesIO()
image.save(output, format=image.format)
thumbnail_data = output.getvalue()
thumbnail_file_name = f'thumbnails/{file_name}'
thumbnail_blob = bucket.blob(thumbnail_file_name)
thumbnail_blob.upload_from_string(thumbnail_data, content_type=blob.content_type)
print(f'சிறுபடம் உருவாக்கப்பட்டது: gs://{bucket_name}/{thumbnail_file_name}')
இந்த செயல்பாடு குறிப்பிட்ட கிளவுட் ஸ்டோரேஜ் பக்கெட்டில் ஒரு புதிய கோப்பு பதிவேற்றப்படும்போதெல்லாம் தூண்டப்படுகிறது. இது படத்தை பதிவிறக்கம் செய்து, அதை 128x128 பிக்சல்களுக்கு மறுஅளவிடுகிறது, மற்றும் சிறுபடத்தை அதே பக்கெட்டில் உள்ள 'thumbnails' கோப்புறையில் பதிவேற்றுகிறது.
உதாரணம் 2: பயனர் பதிவில் வரவேற்பு மின்னஞ்சல்களை அனுப்புதல்
பயனர்கள் கணக்குகளை உருவாக்கக்கூடிய ஒரு வலை பயன்பாட்டைக் கவனியுங்கள். பதிவு செய்தவுடன் புதிய பயனர்களுக்கு தானாக ஒரு வரவேற்பு மின்னஞ்சலை அனுப்ப விரும்புகிறீர்கள். ஒரு Firebase அங்கீகார நிகழ்வால் தூண்டப்பட்ட ஒரு கிளவுட் ஃபங்ஷனைப் பயன்படுத்தி இதை நீங்கள் அடையலாம்.
தூண்டுதல்: Firebase அங்கீகாரம் புதிய பயனர் நிகழ்வு
செயல்பாடு:
from firebase_admin import initialize_app, auth
from sendgrid import SendGridAPIClient
from sendgrid.helpers.mail import Mail
import os
initialize_app()
def send_welcome_email(event, context):
""ஒரு புதிய பயனருக்கு வரவேற்பு மின்னஞ்சலை அனுப்புகிறது.""
user = auth.get_user(event['data']['uid'])
email = user.email
display_name = user.display_name
message = Mail(
from_email='your_email@example.com',
to_emails=email,
subject='எங்கள் பயன்பாட்டிற்கு வரவேற்கிறோம்!',
html_content=f'அன்புள்ள {display_name},\n\nஎங்கள் பயன்பாட்டிற்கு வரவேற்கிறோம்! நீங்கள் எங்களுடன் இணைவதில் நாங்கள் மகிழ்ச்சியடைகிறோம்.\n\nஅன்புடன்,\nகுழு'
)
try:
sg = SendGridAPIClient(os.environ.get('SENDGRID_API_KEY'))
response = sg.send(message)
print(f'{email} க்கு மின்னஞ்சல் அனுப்பப்பட்டது, நிலை குறியீடு: {response.status_code}')
except Exception as e:
print(f'மின்னஞ்சல் அனுப்புவதில் பிழை: {e}')
இந்த செயல்பாடு Firebase அங்கீகாரத்தில் ஒரு புதிய பயனர் உருவாக்கப்படும்போதெல்லாம் தூண்டப்படுகிறது. இது பயனரின் மின்னஞ்சல் முகவரி மற்றும் காட்சி பெயரை மீட்டெடுக்கிறது, மற்றும் SendGrid API ஐப் பயன்படுத்தி ஒரு வரவேற்பு மின்னஞ்சலை அனுப்புகிறது.
உதாரணம் 3: வாடிக்கையாளர் மதிப்பாய்வுகளின் உணர்வை பகுப்பாய்வு செய்தல்
உங்களிடம் ஒரு மின்-வணிக தளம் இருப்பதாக வைத்துக்கொள்வோம், மற்றும் நீங்கள் வாடிக்கையாளர் மதிப்பாய்வுகளின் உணர்வை நிகழ்நேரத்தில் பகுப்பாய்வு செய்ய விரும்புகிறீர்கள். மதிப்பாய்வுகள் சமர்ப்பிக்கப்படும்போது அவற்றைச் செயலாக்க மற்றும் அவை நேர்மறை, எதிர்மறை அல்லது நடுநிலையானவையா என்பதை தீர்மானிக்க கிளவுட் ஃபங்ஷன்ஸைப் பயன்படுத்தலாம்.
தூண்டுதல்: தரவுத்தள எழுதும் நிகழ்வு (எ.கா., ஒரு தரவுத்தளத்தில் ஒரு புதிய மதிப்பாய்வு சேர்க்கப்படுகிறது)
செயல்பாடு:
from google.cloud import language_v1
import os
def analyze_sentiment(event, context):
""வாடிக்கையாளர் மதிப்பாய்வின் உணர்வை பகுப்பாய்வு செய்கிறது.""
review_text = event['data']['review_text']
client = language_v1.LanguageServiceClient()
document = language_v1.Document(content=review_text, type_=language_v1.Document.Type.PLAIN_TEXT)
sentiment = client.analyze_sentiment(request={'document': document}).document_sentiment
score = sentiment.score
magnitude = sentiment.magnitude
if score >= 0.25:
sentiment_label = 'நேர்மறை'
elif score <= -0.25:
sentiment_label = 'எதிர்மறை'
else:
sentiment_label = 'நடுநிலை'
print(f'உணர்வு: {sentiment_label} (மதிப்பெண்: {score}, அளவு: {magnitude})')
# உணர்வு பகுப்பாய்வு முடிவுகளுடன் தரவுத்தளத்தை புதுப்பிக்கவும்
# (செயலாக்கம் உங்கள் தரவுத்தளத்தைப் பொறுத்தது)
இந்த செயல்பாடு தரவுத்தளத்தில் ஒரு புதிய மதிப்பாய்வு எழுதப்படும்போது தூண்டப்படுகிறது. இது மதிப்பாய்வு உரையின் உணர்வை பகுப்பாய்வு செய்ய கூகிள் கிளவுட் இயற்கை மொழி API ஐப் பயன்படுத்துகிறது மற்றும் அது நேர்மறை, எதிர்மறை அல்லது நடுநிலையானதா என்பதை தீர்மானிக்கிறது. பின்னர் செயல்பாடு உணர்வு பகுப்பாய்வு முடிவுகளை அச்சிட்டு, உணர்வு லேபிள், மதிப்பெண் மற்றும் அளவுடன் தரவுத்தளத்தை புதுப்பிக்கிறது.
சரியான கிளவுட் ஃபங்ஷன்ஸ் வழங்குநரைத் தேர்ந்தெடுப்பது
பல கிளவுட் வழங்குநர்கள் கிளவுட் ஃபங்ஷன்ஸ் சேவைகளை வழங்குகிறார்கள். மிகவும் பிரபலமான விருப்பங்கள் பின்வருமாறு:
- Google Cloud Functions: கூகிளின் சர்வர்லெஸ் கணினி சேவை, பிற கூகிள் கிளவுட் சேவைகளுடன் இறுக்கமாக ஒருங்கிணைக்கப்பட்டது.
- AWS Lambda: அமேசானின் சர்வர்லெஸ் கணினி சேவை, அமேசான் வலை சேவைகள் சுற்றுச்சூழல் அமைப்பின் ஒரு பகுதி.
- Azure Functions: மைக்ரோசாப்டின் சர்வர்லெஸ் கணினி சேவை, அசூர் சேவைகளுடன் ஒருங்கிணைக்கப்பட்டது.
ஒரு வழங்குநரைத் தேர்ந்தெடுக்கும்போது, விலை, ஆதரிக்கப்படும் மொழிகள், பிற சேவைகளுடன் ஒருங்கிணைப்பு மற்றும் பிராந்திய கிடைக்கும் தன்மை போன்ற காரணிகளைக் கவனியுங்கள். ஒவ்வொரு வழங்குநருக்கும் அதன் சொந்த பலங்கள் மற்றும் பலவீனங்கள் உள்ளன, எனவே உங்கள் குறிப்பிட்ட தேவைகளை மதிப்பீடு செய்து உங்கள் தேவைகளை சிறப்பாக பூர்த்தி செய்யும் வழங்குநரைத் தேர்ந்தெடுப்பது முக்கியம்.
கிளவுட் ஃபங்ஷன்ஸை மேம்படுத்துவதற்கான சிறந்த நடைமுறைகள்
உங்கள் கிளவுட் ஃபங்ஷன்ஸ் திறமையான, நம்பகமான மற்றும் பாதுகாப்பானவை என்பதை உறுதிப்படுத்த, இந்த சிறந்த நடைமுறைகளைப் பின்பற்றவும்:
- செயல்பாடுகளை சிறியதாகவும் கவனம் செலுத்தியதாகவும் வைத்திருங்கள்: ஒவ்வொரு செயல்பாடும் ஒரு ஒற்றை, நன்கு வரையறுக்கப்பட்ட பணியைச் செய்ய வேண்டும். இது அவற்றை புரிந்துகொள்வதற்கும், சோதிப்பதற்கும் மற்றும் பராமரிப்பதற்கும் எளிதாக்குகிறது. பல பொறுப்புகளைக் கையாளும் ஒற்றைக்கல் செயல்பாடுகளை உருவாக்குவதைத் தவிர்க்கவும்.
- சார்புகளை மேம்படுத்துங்கள்: உங்கள் செயல்பாடுகளில் சேர்க்கப்பட்டுள்ள சார்புகளின் எண்ணிக்கையையும் அளவையும் குறைக்கவும். பெரிய சார்புகள் குளிர் தொடக்க நேரங்களை (ஒரு செயல்பாடு முதல் முறையாக செயல்படுத்த எடுக்கும் நேரம்) அதிகரிக்கக்கூடும்.
- பிழைகளை நளினமாகக் கையாளவும்: எதிர்பாராத தோல்விகளைத் தடுக்க வலுவான பிழை கையாளுதலை செயல்படுத்தவும். விதிவிலக்குகளைப் பிடிக்க try-except தொகுதிகளைப் பயன்படுத்தவும் மற்றும் பிழைகளை முறையாக பதிவு செய்யவும். பல மறுமுயற்சிகளுக்குப் பிறகு செயலாக்கத் தவறும் நிகழ்வுகளைக் கையாள ஒரு டெட்-லெட்டர் வரிசையைப் பயன்படுத்துவதைக் கருத்தில் கொள்ளுங்கள்.
- கட்டமைப்பிற்கு சூழல் மாறிகளைப் பயன்படுத்தவும்: API விசைகள் மற்றும் தரவுத்தள இணைப்பு சரங்கள் போன்ற கட்டமைப்பு அமைப்புகளை உங்கள் செயல்பாட்டுக் குறியீட்டில் கடினமாகக் குறியிடுவதற்குப் பதிலாக சூழல் மாறிகளில் சேமிக்கவும். இது உங்கள் செயல்பாடுகளை மேலும் சிறியதாகவும் பாதுகாப்பாகவும் ஆக்குகிறது.
- பதிவுசெய்தலைச் செயல்படுத்தவும்: முக்கியமான நிகழ்வுகள் மற்றும் பிழைகளைப் பதிவு செய்ய ஒரு பதிவு கட்டமைப்பு பயன்படுத்தவும். இது உங்கள் செயல்பாடுகளின் செயல்திறனைக் கண்காணிக்கவும் மற்றும் சிக்கல்களை சரிசெய்யவும் உதவுகிறது.
- உங்கள் செயல்பாடுகளைப் பாதுகாக்கவும்: உங்கள் செயல்பாடுகளை அங்கீகரிக்கப்படாத அணுகலில் இருந்து பாதுகாக்க முறையான அங்கீகாரம் மற்றும் அங்கீகார வழிமுறைகளை செயல்படுத்தவும். குறியீடு உட்செலுத்துதல் மற்றும் தளங்களுக்கிடையேயான ஸ்கிரிப்டிங் போன்ற பாதிப்புகளைத் தடுக்க பாதுகாப்பான குறியீட்டு நடைமுறைகளைப் பயன்படுத்தவும்.
- உங்கள் செயல்பாடுகளை முழுமையாக சோதிக்கவும்: உங்கள் செயல்பாடுகள் எதிர்பார்த்தபடி செயல்படுகின்றன என்பதை உறுதிப்படுத்த யூனிட் சோதனைகள் மற்றும் ஒருங்கிணைப்பு சோதனைகளை எழுதவும். சோதனையின் போது உங்கள் செயல்பாடுகளை வெளிப்புற சார்புகளிலிருந்து தனிமைப்படுத்த கேலி மற்றும் ஸ்டப்பிங்கைப் பயன்படுத்தவும்.
- உங்கள் செயல்பாடுகளைக் கண்காணிக்கவும்: செயல்படுத்தும் நேரம், நினைவகப் பயன்பாடு மற்றும் பிழை விகிதம் போன்ற உங்கள் செயல்பாடுகளின் செயல்திறனைக் கண்காணிக்க கண்காணிப்புக் கருவிகளைப் பயன்படுத்தவும். இது செயல்திறன் தடைகள் மற்றும் சாத்தியமான சிக்கல்களைக் கண்டறிந்து தீர்க்க உதவுகிறது.
- குளிர் தொடக்கங்களைக் கருத்தில் கொள்ளுங்கள்: கிளவுட் ஃபங்ஷன்ஸ், குறிப்பாக செயலற்ற காலங்களுக்குப் பிறகு, குளிர் தொடக்கங்களை அனுபவிக்கக்கூடும் என்பதை அறிந்து கொள்ளுங்கள். குளிர் தொடக்க நேரங்களைக் குறைக்க உங்கள் செயல்பாடுகளை மேம்படுத்துங்கள். உங்கள் செயல்பாடுகளை செயலில் வைத்திருக்க முன்-சூடாக்குதல் போன்ற நுட்பங்களைப் பயன்படுத்துவதைக் கருத்தில் கொள்ளுங்கள்.
- ஒத்திசைவற்ற செயல்பாடுகளைப் பயன்படுத்தவும்: முடிந்தவரை, செயல்பாட்டின் பிரதான நூலைத் தடுப்பதைத் தவிர்க்க ஒத்திசைவற்ற செயல்பாடுகளைப் பயன்படுத்தவும். இது உங்கள் செயல்பாடுகளின் செயல்திறனையும் பதிலளிக்கும் தன்மையையும் மேம்படுத்த முடியும்.
கிளவுட் ஃபங்ஷன்ஸிற்கான பாதுகாப்பு பரிசீலனைகள்
கிளவுட் ஃபங்ஷன்ஸை உருவாக்கும்போது பாதுகாப்பு மிக முக்கியமானது. மனதில் கொள்ள வேண்டிய சில முக்கிய பாதுகாப்பு பரிசீலனைகள் இங்கே:
- குறைந்தபட்ச சலுகைக் கொள்கை: உங்கள் கிளவுட் ஃபங்ஷன்ஸுக்கு பிற கிளவுட் வளங்களை அணுகுவதற்குத் தேவையான குறைந்தபட்ச அனுமதிகளை மட்டுமே வழங்கவும். இது ஒரு பாதுகாப்பு மீறலின் சாத்தியமான தாக்கத்தைக் குறைக்கிறது. அணுகலின் நோக்கத்தைக் கட்டுப்படுத்த கட்டுப்படுத்தப்பட்ட பாத்திரங்களைக் கொண்ட சேவை கணக்குகளைப் பயன்படுத்தவும்.
- உள்ளீட்டு சரிபார்ப்பு: குறியீடு உட்செலுத்துதல் தாக்குதல்களைத் தடுக்க எப்போதும் பயனர் உள்ளீடுகளை சரிபார்க்கவும். தீங்கு விளைவிக்கும் எழுத்துக்கள் அல்லது குறியீட்டை அகற்ற உள்ளீடுகளைச் சுத்திகரிக்கவும். SQL உட்செலுத்துதல் பாதிப்புகளைத் தடுக்க அளவுருவாக்கப்பட்ட வினவல்களைப் பயன்படுத்தவும்.
- இரகசியங்கள் மேலாண்மை: கடவுச்சொற்கள் அல்லது API விசைகள் போன்ற முக்கியமான தகவல்களை உங்கள் குறியீட்டில் நேரடியாக சேமிக்க வேண்டாம். இரகசியங்களை பாதுகாப்பாக சேமிக்கவும் மற்றும் மீட்டெடுக்கவும் கூகிள் கிளவுட் இரகசிய மேலாளர் அல்லது AWS இரகசியங்கள் மேலாளர் போன்ற ஒரு இரகசியங்கள் மேலாண்மை சேவையைப் பயன்படுத்தவும்.
- சார்பு பாதிப்புகள்: அறியப்பட்ட பாதிப்புகளுக்கு உங்கள் செயல்பாட்டு சார்புகளை தவறாமல் ஸ்கேன் செய்யுங்கள். பாதிக்கப்படக்கூடிய நூலகங்கள் அல்லது தொகுப்புகளைக் கண்டறிந்து தீர்க்க ஒரு சார்பு ஸ்கேனிங் கருவியைப் பயன்படுத்தவும். உங்கள் சார்புகளை சமீபத்திய பாதுகாப்பு പാച്ചുകളுடன் புதுப்பித்த நிலையில் வைத்திருங்கள்.
- நெட்வொர்க் பாதுகாப்பு: உங்கள் கிளவுட் ஃபங்ஷன்ஸிற்கான அணுகலைக் கட்டுப்படுத்த நெட்வொர்க் அணுகல் கட்டுப்பாடுகளை உள்ளமைக்கவும். உங்கள் செயல்பாடுகளை அடைய அங்கீகரிக்கப்பட்ட போக்குவரத்தை மட்டுமே அனுமதிக்க ஃபயர்வால் விதிகளைப் பயன்படுத்தவும். உங்கள் செயல்பாடுகளை பொது இணையத்திலிருந்து தனிமைப்படுத்த ஒரு மெய்நிகர் தனியார் கிளவுட் (VPC) ஐப் பயன்படுத்துவதைக் கருத்தில் கொள்ளுங்கள்.
- பதிவு செய்தல் மற்றும் கண்காணித்தல்: பாதுகாப்பு சம்பவங்களைக் கண்டறிந்து பதிலளிக்க பதிவு செய்தல் மற்றும் கண்காணிப்பதை இயக்கவும். அங்கீகரிக்கப்படாத அணுகல் முயற்சிகள் அல்லது அசாதாரண போக்குவரத்து வடிவங்கள் போன்ற சந்தேகத்திற்கிடமான நடவடிக்கைகளுக்காக உங்கள் பதிவுகளைக் கண்காணிக்கவும். பாதுகாப்பு பதிவுகளை பகுப்பாய்வு செய்து விழிப்பூட்டல்களை உருவாக்க பாதுகாப்பு தகவல் மற்றும் நிகழ்வு மேலாண்மை (SIEM) கருவிகளைப் பயன்படுத்தவும்.
- வழக்கமான பாதுகாப்பு தணிக்கைகள்: உங்கள் கிளவுட் ஃபங்ஷன்ஸில் உள்ள சாத்தியமான பாதிப்புகளைக் கண்டறிந்து தீர்க்க வழக்கமான பாதுகாப்பு தணிக்கைகளை நடத்தவும். தாக்குதல்களை உருவகப்படுத்தவும் மற்றும் உங்கள் பாதுகாப்பு கட்டுப்பாடுகளின் செயல்திறனை மதிப்பிடவும் ஊடுருவல் சோதனை கருவிகளைப் பயன்படுத்தவும்.
- இணக்கம்: உங்கள் கிளவுட் ஃபங்ஷன்ஸ் GDPR, HIPAA, மற்றும் PCI DSS போன்ற தொடர்புடைய தொழில் விதிமுறைகள் மற்றும் தரங்களுடன் இணங்குவதை உறுதிசெய்யவும். முக்கியமான தரவைப் பாதுகாக்கவும் மற்றும் இணக்கத்தைப் பராமரிக்கவும் பொருத்தமான பாதுகாப்பு கட்டுப்பாடுகளை செயல்படுத்தவும்.
கிளவுட் ஃபங்ஷன்ஸ் மற்றும் நிகழ்வு-சார்ந்த கட்டமைப்பின் எதிர்காலம்
கிளவுட் ஃபங்ஷன்ஸ் மற்றும் நிகழ்வு-சார்ந்த கட்டமைப்பு மென்பொருள் மேம்பாட்டின் எதிர்காலத்தில் பெருகிய முறையில் முக்கிய பங்கு வகிக்க தயாராக உள்ளன. நிறுவனங்கள் கிளவுட்-நேட்டிவ் தொழில்நுட்பங்கள் மற்றும் மைக்ரோ சர்வீசஸ் கட்டமைப்புகளை தொடர்ந்து தழுவி வருவதால், சர்வர்லெஸ் கம்ப்யூட்டிங் மற்றும் நிகழ்வு-சார்ந்த தகவல்தொடர்புகளின் நன்மைகள் இன்னும் கட்டாயமாக மாறும்.
பின்வரும் பகுதிகளில் மேலும் முன்னேற்றங்களை நாம் எதிர்பார்க்கலாம்:
- மேம்படுத்தப்பட்ட டெவலப்பர் கருவிகள்: கிளவுட் வழங்குநர்கள் கிளவுட் ஃபங்ஷன்ஸை உருவாக்குவதற்கும், பயன்படுத்துவதற்கும் மற்றும் நிர்வகிப்பதற்கும் எளிதாக்குவதற்கு டெவலப்பர் கருவிகளில் தொடர்ந்து முதலீடு செய்வார்கள். இதில் IDE ஒருங்கிணைப்புகள், பிழைத்திருத்தக் கருவிகள் மற்றும் CI/CD பைப்லைன்கள் ஆகியவை அடங்கும்.
- மேம்படுத்தப்பட்ட கண்காணிப்புத்தன்மை: கண்காணிப்புக் கருவிகள் மிகவும் நுட்பமானதாக மாறும், இது கிளவுட் ஃபங்ஷன்ஸின் செயல்திறன் மற்றும் நடத்தை பற்றிய ஆழமான நுண்ணறிவுகளை வழங்கும். இது டெவலப்பர்கள் சிக்கல்களை விரைவாகக் கண்டறிந்து தீர்க்க உதவும்.
- மேலும் நுட்பமான நிகழ்வு செயலாக்கம்: நிகழ்வு செயலாக்க தளங்கள் மிகவும் சிக்கலான நிகழ்வு வடிவங்கள் மற்றும் தரவு மாற்றங்களை ஆதரிக்க உருவாகும். இது நிறுவனங்கள் மிகவும் நுட்பமான நிகழ்வு-சார்ந்த பயன்பாடுகளை உருவாக்க உதவும்.
- எட்ஜ் கம்ப்யூட்டிங்: கிளவுட் ஃபங்ஷன்ஸ் நெட்வொர்க்கின் விளிம்பில், தரவு மூலத்திற்கு நெருக்கமாக பெருகிய முறையில் பயன்படுத்தப்படும். இது தாமதத்தைக் குறைத்து நிகழ்நேர பயன்பாடுகளின் செயல்திறனை மேம்படுத்தும்.
- செயற்கை நுண்ணறிவு மற்றும் இயந்திர கற்றல்: கிளவுட் ஃபங்ஷன்ஸ் AI/ML மாதிரிகளை உருவாக்க மற்றும் பயன்படுத்த பயன்படுத்தப்படும், இது நிறுவனங்கள் பணிகளை தானியக்கமாக்கவும் மற்றும் தரவிலிருந்து நுண்ணறிவுகளைப் பெறவும் உதவும்.
முடிவுரை
கிளவுட் ஃபங்ஷன்ஸ் மற்றும் நிகழ்வு-சார்ந்த கட்டமைப்பு அளவிடக்கூடிய, திறமையான மற்றும் செலவு குறைந்த பயன்பாடுகளை உருவாக்குவதற்கு ஒரு சக்திவாய்ந்த கலவையை வழங்குகின்றன. இந்த தொழில்நுட்பங்களைத் தழுவுவதன் மூலம், நிறுவனங்கள் தங்கள் மேம்பாட்டு செயல்முறைகளை நெறிப்படுத்தலாம், உள்கட்டமைப்பு செலவுகளைக் குறைக்கலாம் மற்றும் புதுமைகளை விரைவுபடுத்தலாம். கிளவுட் நிலப்பரப்பு தொடர்ந்து உருவாகி வருவதால், கிளவுட் ஃபங்ஷன்ஸ் மற்றும் EDA நவீன மென்பொருள் மேம்பாட்டின் முன்னணியில் இருக்கும், இது டெவலப்பர்களுக்கு அடுத்த தலைமுறை பயன்பாடுகளை உருவாக்க அதிகாரம் அளிக்கிறது.
நீங்கள் ஒரு எளிய வெப்ஹூக் கையாளுநரை உருவாக்கினாலும் அல்லது ஒரு சிக்கலான நிகழ்நேர தரவு செயலாக்க பைப்லைனை உருவாக்கினாலும், கிளவுட் ஃபங்ஷன்ஸ் உங்கள் யோசனைகளை உயிர்ப்பிக்க ஒரு நெகிழ்வான மற்றும் அளவிடக்கூடிய தளத்தை வழங்குகின்றன. நிகழ்வுகளின் சக்தியைத் தழுவி, கிளவுட் ஃபங்ஷன்ஸ் மூலம் சர்வர்லெஸ் கம்ப்யூட்டிங்கின் திறனைத் திறக்கவும்.