Kubernetes වෙත Cassandra සංක්‍රමණය: විශේෂාංග සහ විසඳුම්

Kubernetes වෙත Cassandra සංක්‍රමණය: විශේෂාංග සහ විසඳුම්

Apache Cassandra දත්ත සමුදාය සහ එය Kubernetes මත පදනම් වූ යටිතල ව්‍යුහයක් තුළ ක්‍රියාත්මක කිරීමේ අවශ්‍යතාවය අපට නිරන්තරයෙන් මුණගැසෙනවා. මෙම ද්‍රව්‍යය තුළ, අපි Cassandra K8s වෙත සංක්‍රමණය කිරීම සඳහා අවශ්‍ය පියවර, නිර්ණායක සහ පවතින විසඳුම් (ක්‍රියාකරුවන්ගේ දළ විශ්ලේෂණයක් ඇතුළුව) පිළිබඳ අපගේ දැක්ම බෙදා ගන්නෙමු.

"කාන්තාවක් පාලනය කළ හැකි තැනැත්තාට රාජ්යය පාලනය කළ හැකිය"

කැසැන්ඩ්‍රා යනු කවුද? එය එක් අසාර්ථකත්වයකින් තොරව ඉහළ ලබා ගත හැකි බව සහතික කරන අතරම විශාල දත්ත පරිමාවක් කළමනාකරණය කිරීමට නිර්මාණය කර ඇති බෙදා හරින ලද ගබඩා පද්ධතියකි. ව්‍යාපෘතියට දිගු හැඳින්වීමක් අවශ්‍ය නොවේ, එබැවින් මම නිශ්චිත ලිපියක සන්දර්භය තුළ අදාළ වන කැසැන්ඩ්‍රා හි ප්‍රධාන ලක්ෂණ පමණක් දෙන්නෙමි:

  • කැසැන්ඩ්‍රා ලියා ඇත්තේ ජාවා භාෂාවෙනි.
  • Cassandra ස්ථලකය මට්ටම් කිහිපයක් ඇතුළත් වේ:
    • නෝඩ් - එක් යෙදවූ කැසැන්ඩ්‍රා අවස්ථාවක්;
    • රැක් යනු එකම දත්ත මධ්‍යස්ථානයක පිහිටා ඇති යම් ලක්ෂණයකින් එක්සත් වූ කැසැන්ඩ්‍රා අවස්ථා සමූහයකි;
    • Datacenter - එක් දත්ත මධ්‍යස්ථානයක පිහිටා ඇති කැසැන්ඩ්‍රා නිදර්ශනවල සියලුම කණ්ඩායම්වල එකතුවකි;
    • Cluster යනු සියලුම දත්ත මධ්‍යස්ථාන වල එකතුවකි.
  • නෝඩයක් හඳුනා ගැනීමට කැසැන්ඩ්‍රා IP ලිපිනයක් භාවිතා කරයි.
  • ලිවීමේ සහ කියවීමේ මෙහෙයුම් වේගවත් කිරීම සඳහා, Cassandra RAM හි සමහර දත්ත ගබඩා කරයි.

දැන් - Kubernetes වෙත සැබෑ විභව චලනය වෙත.

මාරු කිරීම සඳහා පිරික්සුම් ලැයිස්තුව

කැසැන්ඩ්‍රා කුබර්නෙටස් වෙත සංක්‍රමණය වීම ගැන කතා කරමින්, මෙම පියවර සමඟ එය කළමනාකරණය කිරීමට වඩාත් පහසු වනු ඇතැයි අපි බලාපොරොත්තු වෙමු. මේ සඳහා අවශ්ය වන්නේ කුමක්ද, මේ සඳහා උපකාරවත් වන්නේ කුමක්ද?

1. දත්ත ගබඩා කිරීම

දැනටමත් පැහැදිලි කර ඇති පරිදි, Cassanda දත්ත වලින් කොටසක් RAM - තුළ ගබඩා කරයි මතක තබා ගත හැකි. නමුත් තැටියේ සුරකින ලද දත්තවල තවත් කොටසක් තිබේ - පෝරමයේ SSTable. මෙම දත්ත වලට ආයතනයක් එක් කර ඇත කැපුම් ලොගය - තැටියේ සුරකින ලද සියලුම ගනුදෙනු වල වාර්තා.

Kubernetes වෙත Cassandra සංක්‍රමණය: විශේෂාංග සහ විසඳුම්
Cassandra හි ගනුදෙනු රූප සටහන ලියන්න

Kubernetes හි, අපට දත්ත ගබඩා කිරීමට PersistentVolume භාවිතා කළ හැක. ඔප්පු කරන ලද යාන්ත්‍රණයන්ට ස්තූතිවන්ත වන අතර, සෑම වසරකම Kubernetes හි දත්ත සමඟ වැඩ කිරීම පහසු වෙමින් පවතී.

Kubernetes වෙත Cassandra සංක්‍රමණය: විශේෂාංග සහ විසඳුම්
අපි එක් එක් කැසැන්ඩ්‍රා පොඩ් එකකට අපේම Persistent Volume වෙන් කරන්නෙමු

කැසැන්ඩ්‍රා විසින්ම දත්ත අනුකරණයක් අදහස් කරන බව සැලකිල්ලට ගැනීම වැදගත්ය, මේ සඳහා ගොඩනඟන ලද යාන්ත්‍රණ ඉදිරිපත් කරයි. එබැවින්, ඔබ විශාල නෝඩ් ගණනකින් Cassandra පොකුරක් ගොඩනඟන්නේ නම්, දත්ත ගබඩා කිරීම සඳහා Ceph හෝ GlusterFS වැනි බෙදාහැරීමේ පද්ධති භාවිතා කිරීම අවශ්ය නොවේ. මෙම අවස්ථාවේදී, භාවිතා කරමින් ධාරක තැටියේ දත්ත ගබඩා කිරීම තාර්කික වනු ඇත දේශීය ස්ථීර තැටි හෝ සවි කිරීම hostPath.

ඔබට එක් එක් විශේෂාංග ශාඛාව සඳහා සංවර්ධකයින් සඳහා වෙනම පරිසරයක් නිර්මාණය කිරීමට අවශ්‍ය නම් තවත් ප්‍රශ්නයක්. මෙම අවස්ථාවෙහිදී, නිවැරදි ප්‍රවේශය වනුයේ එක් කැසැන්ඩ්‍රා නෝඩයක් ඔසවා බෙදා හරින ලද ගබඩාවක දත්ත ගබඩා කිරීමයි, i.e. සඳහන් Ceph සහ GlusterFS ඔබේ විකල්ප වනු ඇත. එවිට කුබර්න්ටෙස් පොකුරු නෝඩ් එකක් නැති වුවද පරීක්ෂණ දත්ත නැති නොවන බව සංවර්ධකයාට සහතික වනු ඇත.

2. අධීක්ෂණය

Kubernetes හි අධීක්‍ෂණය ක්‍රියාත්මක කිරීම සඳහා පාහේ අවිවාදිත තේරීම Prometheus වේ (අපි මේ ගැන විස්තරාත්මකව කතා කළා අදාළ වාර්තාව). ප්‍රොමිතියස් සඳහා ප්‍රමිතික අපනයනකරුවන් සමඟ කැසැන්ඩ්‍රා කටයුතු කරන්නේ කෙසේද? තවද, Grafana සඳහා ගැළපෙන උපකරණ පුවරු සමඟ වඩාත් වැදගත් වන්නේ කුමක්ද?

Kubernetes වෙත Cassandra සංක්‍රමණය: විශේෂාංග සහ විසඳුම්
කැසැන්ඩ්‍රා සඳහා ග්‍රැෆනා හි ප්‍රස්ථාරවල පෙනුම පිළිබඳ උදාහරණයක්

අපනයනකරුවන් දෙදෙනෙකු පමණි: jmx_exporter и cassandra_exporter.

අපි පළමු එක අප වෙනුවෙන් තෝරා ගත්තේ:

  1. JMX Exporter වර්ධනය වෙමින් සහ සංවර්ධනය වෙමින් පවතින අතර, Cassandra Exporter හට ප්‍රමාණවත් ප්‍රජා සහයෝගයක් ලබා ගැනීමට නොහැකි වී ඇත. Cassandra Exporter තවමත් Cassandra හි බොහෝ අනුවාද සඳහා සහය නොදක්වයි.
  2. ධජයක් එකතු කිරීමෙන් ඔබට එය javaagent ලෙස ධාවනය කළ හැකිය -javaagent:<plugin-dir-name>/cassandra-exporter.jar=--listen=:9180.
  3. ඔහුට එකක් තිබේ ප්රමාණවත් උපකරණ පුවරුව, Cassandra Exporter සමඟ නොගැලපෙන.

3. Kubernetes primitives තෝරාගැනීම

කැසැන්ඩ්‍රා පොකුරේ ඉහත ව්‍යුහයට අනුව, එහි විස්තර කර ඇති සියල්ල Kubernetes පාරිභාෂිතයට පරිවර්තනය කිරීමට උත්සාහ කරමු:

  • Cassandra Node → Pod
  • Cassandra Rack → StatefulSet
  • Cassandra Datacenter → StatefulSets වෙතින් තටාකය
  • Cassandra Cluster → ???

මුළු කැසැන්ඩ්‍රා පොකුරම එකවර කළමනාකරණය කිරීමට යම් අමතර ආයතනයක් අතුරුදහන් වී ඇති බව පෙනේ. නමුත් යමක් නොපවතී නම්, අපට එය නිර්මාණය කළ හැකිය! මේ සඳහා කුබර්නෙටස් සතුව තමන්ගේම සම්පත් නිර්වචනය කිරීමේ යාන්ත්‍රණයක් ඇත - අභිරුචි සම්පත් අර්ථ දැක්වීම්.

Kubernetes වෙත Cassandra සංක්‍රමණය: විශේෂාංග සහ විසඳුම්
ලඝු-සටහන් සහ ඇඟවීම් සඳහා අමතර සම්පත් ප්‍රකාශ කිරීම

නමුත් අභිරුචි සම්පත් කිසිවක් අදහස් නොවේ: සියල්ලට පසු, එය අවශ්ය වේ පාලකය. ඔබට උපකාර පැතීමට සිදු විය හැක Kubernetes ක්රියාකරු...

4. කරල් හඳුනා ගැනීම

ඉහත ඡේදයේ, එක් කැසැන්ඩ්‍රා නෝඩයක් කුබර්නෙටේස් හි එක් පොඩ් එකකට සමාන වන බවට අපි එකඟ විය. නමුත් පොඩ්ස් වල IP ලිපින සෑම විටම වෙනස් වේ. තවද කැසැන්ඩ්‍රා හි නෝඩයක් හඳුනා ගැනීම IP ලිපිනය මත පදනම් වේ ... එය සිදු වන්නේ එක් එක් පොඩ් ඉවත් කිරීමෙන් පසුව, කැසැන්ඩ්‍රා පොකුර නව නෝඩයක් එක් කරන බවයි.

මගක් ඇත, එකක් පමණක් නොවේ:

  1. අපට ධාරක හඳුනාගැනීම් (කැසැන්ඩ්‍රා අවස්ථා අනන්‍ය ලෙස හඳුනා ගන්නා UUID) හෝ IP ලිපින මගින් වාර්තා තබා ගත හැකි අතර ඒ සියල්ල සමහර ව්‍යුහයන්/වගුවන්හි ගබඩා කළ හැක. ක්රමය ප්රධාන අවාසි දෙකක් ඇත:
    • නෝඩ් දෙකක් එකවර වැටුනහොත් ධාවන තත්වයක් ඇතිවීමේ අවදානම. නැගීමෙන් පසු, කැසැන්ඩ්‍රා නෝඩ් එකවරම මේසයෙන් IP ලිපිනයක් ඉල්ලා සිටින අතර එම සම්පත සඳහා තරඟ කරයි.
    • Cassandra node එකක් එහි දත්ත නැති වී ඇත්නම්, අපට එය තවදුරටත් හඳුනා ගැනීමට නොහැකි වනු ඇත.
  2. දෙවන විසඳුම කුඩා හැක් එකක් ලෙස පෙනේ, නමුත් කෙසේ වෙතත්: අපට එක් එක් කැසැන්ඩ්‍රා නෝඩ් සඳහා ClusterIP සමඟ සේවාවක් නිර්මාණය කළ හැකිය. මෙම ක්‍රියාත්මක කිරීමේ ගැටළු:
    • Cassandra cluster එකක nodes ගොඩක් තියෙනවනම් Services ගොඩක් හදන්න වෙනවා.
    • ClusterIP විශේෂාංගය iptables හරහා ක්‍රියාත්මක වේ. Cassandra පොකුරේ බොහෝ (1000... හෝ 100?) නෝඩ් තිබේ නම් මෙය ගැටළුවක් විය හැක. වුවද IPVS මත පදනම්ව තුලනය මෙම ගැටළුව විසඳා ගත හැකිය.
  3. තුන්වන විසඳුම වන්නේ සැකසුම සක්‍රීය කිරීමෙන් කැපවූ කරල් ජාලයක් වෙනුවට කැසැන්ඩ්‍රා නෝඩ් සඳහා නෝඩ් ජාලයක් භාවිතා කිරීමයි. hostNetwork: true. මෙම ක්රමය යම් සීමාවන් පනවා ඇත:
    • ඒකක ප්රතිස්ථාපනය කිරීමට. නව නෝඩයට පෙර තිබූ IP ලිපිනයම තිබීම අවශ්‍ය වේ (AWS, GCP වැනි වලාකුළු වල මෙය කළ නොහැකි තරම්ය);
    • පොකුරු නෝඩ් ජාලයක් භාවිතා කරමින්, අපි ජාල සම්පත් සඳහා තරඟ කිරීමට පටන් ගනිමු. එබැවින්, එක් පොකුරු නෝඩයක් මත කැසැන්ඩ්‍රා සමඟ පොඩ් එකකට වඩා තැබීම ගැටළු සහගත වනු ඇත.

5. උපස්ථ

අපට තනි කැසැන්ඩ්‍රා නෝඩයක සම්පූර්ණ අනුවාදයක් කාලසටහනක් මත සුරැකීමට අවශ්‍යයි. Kubernetes භාවිතා කිරීමට පහසු විශේෂාංගයක් සපයයි CronJob, නමුත් මෙන්න කැසැන්ඩ්‍රා විසින්ම අපේ රෝදවලට ස්පෝක් එකක් දමයි.

Cassandra මතකයේ සමහර දත්ත ගබඩා කරන බව මම ඔබට මතක් කරමි. සම්පූර්ණ උපස්ථයක් සෑදීමට, ඔබට මතකයෙන් දත්ත අවශ්‍ය වේ (මතක සටහන්) තැටිය වෙත ගෙන යන්න (SSTables) මෙම අවස්ථාවේදී, Cassandra නෝඩය සම්බන්ධතා පිළිගැනීම නතර කරයි, පොකුරෙන් සම්පූර්ණයෙන්ම වසා දමයි.

මෙයින් පසු, උපස්ථය ඉවත් කරනු ලැබේ (සැණරුව) සහ යෝජනා ක්රමය සුරැකේ (යතුරු අවකාශය) උපස්ථයක් පමණක් අපට කිසිවක් ලබා නොදෙන බව පෙනේ: කැසැන්ඩ්‍රා නෝඩය වගකිව යුතු දත්ත හඳුනාගැනීම් අප සුරැකිය යුතුය - මේවා විශේෂ ටෝකන වේ.

Kubernetes වෙත Cassandra සංක්‍රමණය: විශේෂාංග සහ විසඳුම්
Cassandra නෝඩ් වගකිව යුතු දත්ත මොනවාදැයි හඳුනා ගැනීමට ටෝකන බෙදා හැරීම

Kubernetes හි Google වෙතින් Cassandra උපස්ථයක් ලබා ගැනීම සඳහා උදාහරණ පිටපතක් සොයාගත හැකිය මෙම සබැඳිය. ස්ක්‍රිප්ටය සැලකිල්ලට නොගන්නා එකම කරුණ නම් ස්නැප්ෂොට් ගැනීමට පෙර දත්ත නෝඩයට නැවත සැකසීමයි. එනම්, උපස්ථය සිදු කරනු ලබන්නේ වත්මන් තත්වය සඳහා නොව, මඳක් පෙර තත්වය සඳහා ය. නමුත් මෙය ඉතා තාර්කික බව පෙනෙන නෝඩය ක්‍රියාන්විතයෙන් ඉවත් නොකිරීමට උපකාරී වේ.

set -eu

if [[ -z "$1" ]]; then
  info "Please provide a keyspace"
  exit 1
fi

KEYSPACE="$1"

result=$(nodetool snapshot "${KEYSPACE}")

if [[ $? -ne 0 ]]; then
  echo "Error while making snapshot"
  exit 1
fi

timestamp=$(echo "$result" | awk '/Snapshot directory: / { print $3 }')

mkdir -p /tmp/backup

for path in $(find "/var/lib/cassandra/data/${KEYSPACE}" -name $timestamp); do
  table=$(echo "${path}" | awk -F "[/-]" '{print $7}')
  mkdir /tmp/backup/$table
  mv $path /tmp/backup/$table
done


tar -zcf /tmp/backup.tar.gz -C /tmp/backup .

nodetool clearsnapshot "${KEYSPACE}"

එක් Cassandra node එකකින් උපස්ථයක් ගැනීම සඳහා bash script එකක උදාහරණයක්

Kubernetes හි Cassandra සඳහා සූදානම් විසඳුම්

Kubernetes හි කැසැන්ඩ්‍රා යෙදවීමට දැනට භාවිතා කරන්නේ කුමක්ද සහ ලබා දී ඇති අවශ්‍යතාවලට වඩාත් ගැලපෙන ඒවා මොනවාද?

1. StatefulSet හෝ Helm ප්‍රස්ථාර මත පදනම් වූ විසඳුම්

Cassandra පොකුරක් ධාවනය කිරීම සඳහා මූලික StatefulSets කාර්යයන් භාවිතා කිරීම හොඳ විකල්පයකි. Helm chart සහ Go සැකිලි භාවිතා කරමින්, ඔබට Cassandra යෙදවීම සඳහා නම්‍යශීලී අතුරු මුහුණතක් පරිශීලකයාට ලබා දිය හැක.

මෙය සාමාන්‍යයෙන් හොඳින් ක්‍රියා කරයි... නෝඩය අසමත් වීම වැනි අනපේක්ෂිත දෙයක් සිදු වන තුරු. සම්මත Kubernetes මෙවලම් හුදෙක් ඉහත විස්තර කර ඇති සියලුම අංගයන් සැලකිල්ලට ගත නොහැක. මීට අමතරව, මෙම ප්‍රවේශය වඩාත් සංකීර්ණ භාවිතයන් සඳහා කොපමණ ප්‍රමාණයක් දිගු කළ හැකිද යන්නෙහි ඉතා සීමිතය: නෝඩ් ප්‍රතිස්ථාපනය, උපස්ථය, ප්‍රතිසාධනය, අධීක්ෂණය, ආදිය.

නියෝජිතයන්:

ප්‍රස්ථාර දෙකම එක හා සමානව හොඳයි, නමුත් ඉහත විස්තර කර ඇති ගැටළු වලට යටත් වේ.

2. Kubernetes Operator මත පදනම් වූ විසඳුම්

එවැනි විකල්ප වඩාත් සිත්ගන්නා සුළු වන්නේ ඒවා පොකුර කළමනාකරණය කිරීම සඳහා ප්රමාණවත් අවස්ථාවන් ලබා දෙන බැවිනි. Cassandra ක්‍රියාකරුවෙකු සැලසුම් කිරීම සඳහා, වෙනත් ඕනෑම දත්ත ගබඩාවක් මෙන්, හොඳ රටාවක් Sidecar <-> Controller <-> CRD ලෙස පෙනේ:

Kubernetes වෙත Cassandra සංක්‍රමණය: විශේෂාංග සහ විසඳුම්
හොඳින් සැලසුම් කරන ලද කැසැන්ඩ්‍රා ක්‍රියාකරු තුළ නෝඩ් කළමනාකරණ යෝජනා ක්‍රමය

දැනට පවතින ක්‍රියාකරුවන් දෙස බලමු.

1. instaclustr වෙතින් Cassandra-operator

  • GitHub
  • සූදානම: ඇල්ෆා
  • බලපත්‍රය: Apache 2.0
  • ක්‍රියාත්මක වන්නේ: ජාවා

මෙය සැබවින්ම කළමනාකරණය කරන ලද කැසැන්ඩ්‍රා යෙදවීම් ලබා දෙන සමාගමකින් ඉතා පොරොන්දු වූ සහ ක්‍රියාකාරීව සංවර්ධනය වන ව්‍යාපෘතියකි. එය, ඉහත විස්තර කර ඇති පරිදි, HTTP හරහා විධාන පිළිගන්නා සයිඩ්කාර් බහාලුමක් භාවිතා කරයි. ජාවා හි ලියා ඇති එය සමහර විට සේවාලාභියා-ගොස් පුස්තකාලයේ වඩා දියුණු ක්‍රියාකාරීත්වයක් නොමැත. එසේම, ක්රියාකරු එක් දත්ත මධ්යස්ථානයක් සඳහා විවිධ Racks සඳහා සහය නොදක්වයි.

නමුත් ක්‍රියාකරුට අධීක්ෂණය සඳහා සහාය, CRD භාවිතයෙන් ඉහළ මට්ටමේ පොකුරු කළමනාකරණය සහ උපස්ථ සෑදීම සඳහා ලේඛනගත කිරීම වැනි වාසි ඇත.

2. Jetstack වෙතින් Navigator

  • GitHub
  • සූදානම: ඇල්ෆා
  • බලපත්‍රය: Apache 2.0
  • ක්රියාත්මක කර ඇත: Golang

DB-as-a-Service යෙදවීමට නිර්මාණය කර ඇති ප්‍රකාශයක්. දැනට දත්ත සමුදායන් දෙකකට සහය දක්වයි: Elasticsearch සහ Cassandra. එයට RBAC හරහා දත්ත සමුදා ප්‍රවේශ පාලනය වැනි රසවත් විසඳුම් ඇත (මේ සඳහා එයට තමන්ගේම වෙනම navigator-apiserver ඇත). සමීපව බැලීම වටී සිත්ගන්නා ව්‍යාපෘතියක්, නමුත් අවසාන කැපවීම වසර එකහමාරකට පෙර සිදු කරන ලද අතර එමඟින් එහි විභවය පැහැදිලිවම අඩු වේ.

3. vgkowski විසින් Cassandra-operator

  • GitHub
  • සූදානම: ඇල්ෆා
  • බලපත්‍රය: Apache 2.0
  • ක්රියාත්මක කර ඇත: Golang

නිධිය සඳහා අවසාන කැපවීම වසරකට වඩා වැඩි කාලයක් ගත වූ බැවින් ඔවුන් එය "බැරෑරුම් ලෙස" සැලකුවේ නැත. ක්‍රියාකරු සංවර්ධනය අත්හැර ඇත: සහාය දක්වන ලෙස වාර්තා කරන ලද Kubernetes හි නවතම අනුවාදය 1.9 වේ.

4. Rook විසින් Cassandra-ක්රියාකරු

  • GitHub
  • සූදානම: ඇල්ෆා
  • බලපත්‍රය: Apache 2.0
  • ක්රියාත්මක කර ඇත: Golang

අපි කැමති තරම් ඉක්මනින් සංවර්ධනයක් සිදු නොවන ක්‍රියාකරුවෙක්. එය පොකුරු කළමනාකරණය සඳහා හොඳින් සිතා ගත හැකි CRD ව්‍යුහයක් ඇත, ClusterIP (එකම "හැක්") සමඟ සේවාව භාවිතා කරමින් නෝඩ් හඳුනාගැනීමේ ගැටලුව විසඳයි ... නමුත් දැනට එපමණයි. කොටුවෙන් පිටත දැනට නිරීක්ෂණ හෝ උපස්ථ නොමැත (මාර්ගය වන විට, අපි අධීක්ෂණය සඳහා ය අපිම ගත්තා) සිත්ගන්නා කරුණක් නම් ඔබට මෙම ක්‍රියාකරු භාවිතයෙන් ScyllaDB යෙදවිය හැකි වීමයි.

සැ.යු: අපි අපගේ එක් ව්‍යාපෘතියක සුළු වෙනස් කිරීම් සහිතව මෙම ක්‍රියාකරු භාවිතා කළෙමු. සම්පූර්ණ මෙහෙයුම් කාලය තුළ (මෙහෙයුම් මාස 4 ක්) ක්රියාකරුගේ කාර්යයේ කිසිදු ගැටළුවක් දක්නට නොලැබුණි.

5. ඔරේන්ජ් සිට CassKop

  • GitHub
  • සූදානම: ඇල්ෆා
  • බලපත්‍රය: Apache 2.0
  • ක්රියාත්මක කර ඇත: Golang

ලැයිස්තුවේ ලාබාලතම ක්‍රියාකරු: පළමු කැපවීම 23 මැයි 2019 දින සිදු කරන ලදී. දැනටමත් එහි අවි ගබඩාවේ අපගේ ලැයිස්තුවෙන් විශේෂාංග විශාල ප්‍රමාණයක් ඇත, ඒවා පිළිබඳ වැඩි විස්තර ව්‍යාපෘති ගබඩාවෙන් සොයාගත හැකිය. ක්රියාකරු ජනප්රිය ක්රියාකරු-sdk පදනම මත ගොඩනගා ඇත. කොටුවෙන් පිටත නිරීක්ෂණයට සහය දක්වයි. අනෙකුත් ක්රියාකරුවන්ගෙන් ප්රධාන වෙනස වන්නේ භාවිතයයි CassKop ප්ලගිනය, පයිතන් හි ක්‍රියාත්මක වන අතර කැසැන්ඩ්‍රා නෝඩ් අතර සන්නිවේදනය සඳහා භාවිතා වේ.

සොයා ගැනීම්

කැසැන්ඩ්‍රා කුබර්නෙටස් වෙත ගෙනයාම සඳහා ප්‍රවේශයන් සහ හැකි විකල්ප ගණන තමාටම කථා කරයි: මාතෘකාව ඉල්ලුමේ පවතී.

මෙම අවස්ථාවෙහිදී, ඔබට ඔබේම අනතුරක් සහ අවදානමක් ඇතිව ඉහත සඳහන් ඕනෑම දෙයක් උත්සාහ කළ හැකිය: සංවර්ධකයින් කිසිවෙකු නිෂ්පාදන පරිසරයක් තුළ ඔවුන්ගේ විසඳුම 100% ක් ක්රියාත්මක කිරීම සහතික කරයි. නමුත් දැනටමත්, බොහෝ නිෂ්පාදන සංවර්ධන බංකුවල භාවිතා කිරීමට උත්සාහ කිරීමට පොරොන්දු වේ.

මම හිතන්නේ අනාගතයේදී නැවේ සිටින මෙම කාන්තාව ප්‍රයෝජනවත් වේවි!

ප්රාදේශීය සභා

අපගේ බ්ලොග් අඩවියේ ද කියවන්න:

මූලාශ්රය: www.habr.com

අදහස් එක් කරන්න