Tamagotchi serisinin wi-fi bağlantısıyla donatılan ilk modeli olan Tamagotchi Uni artık satışta. Bu yeni model, Tamagotchi’nin direkt internete bağlanmasına ve dünyanın dört bir yanından öteki benzersiz Tamagotchi ile etkileşime girmesine olanak tanıyor. Ürün geliştirme ve satıştan görevli şirket BANDAI CO., LTD., küresel olarak birbirine bağlı Tamagotchi konseptini hayata geçirmek ve kullananların birbirleriyle etkileşime geçmesini sağlamak için AWS IoT’yi benimsedi.
Bu yazıda BANDAI CO., LTD.’nin iyi mi kurulduğunu paylaşıyoruz. ve bulut geliştirme ortakları Phoenisys, Inc., milyonlarca Tamagotchi cihazını bağlamak ve yönetmek için AWS’yi kullandı. Bilhassa, AWS IoT Device Management’ın İşler hususi durumunu kullanarak, müşteriler için herhangi bir gecikmeye niçin olmadan son olarak ürün yazılımını tüm Tamagotchi cihazlarına dağıtmak amacıyla uzaktan güncellemeler gerçekleştirmek fazlaca önemliydi.
Tamagotchi Üniversitesi nedir?
Tamagotchi, kullananların besleyebileceği elde taşınan sanal evcil hayvanlardır. 1996’daki kuruluşundan bu yana dünya genelinde 91 milyonun üstünde birim satıldı ve her yaştan insan tarafınca takdir edildi. Tamagotchi serisinin son olarak modeli Tamagotchi Uni, 15 Temmuz 2023’te dünya genelinde piyasaya sürüldü. Bu yeni model, Tamagotchi’nin direkt internete bağlanmasına ve dünyanın dört bir yanından öteki benzersiz Tamagotchi ile etkileşime girmesine olanak tanıyor. Ürünün vizyonu, dünyanın her yerindeki Tamagotchi fanatiklerinin, kendi yetiştirdikleri Tamagotchi’yi kullanarak birbirleriyle kontakt kurabilecekleri bir dünya yaratmaktır.
Tamagotchi Uni’nin evrimi
Wi-fi bağlantısı yardımıyla Tamagotchi kullanıcıları, Tamagotchi’nin meta veri tabanı olan Tamaverse’i keşfedebilir ve dünya çapındaki kullanıcılar tarafınca beslenen Tamagotchi ile tanışabilirler. Ek olarak, Tamagotchi Uni direkt buluta bağlanarak kullananların dağıtım için devamlı olarak yeni etkinlikler ve öğeler indirmesine olanak tanıyor. Bağlantı bununla beraber kullananların eş zamanlı olarak birbirleriyle rekabet etmelerini ve ortaklaşa iş yapmalarını sağlar. Bu işlevler, birçok AWS Bölgesinde güvenilir bulut bağlantısı sunan AWS IoT Core yardımıyla mümkündür.
AWS IoT ve sunucusuz mimariyle güvenli bağlantı
Tamagotchi Uni IoT’yi etkin hale getirmek için BANDAI aşağıdaki üç temel hedefi belirledi:
- Güvenli bağlantıların uygulanması
- Dünya genelinde 1 milyondan fazla bağlantıyı barındıracak şekilde ölçeklendirme ve yük dengeleme kaynakları
- Operasyonel maliyetlerin optimize edilmesi
Tamagotchi çözümü, AWS IoT kullanılarak AWS sunucusuz bir mimariye uygulandı.

Tamagotchi Uni için AWS mimarisi
Bu bölümde, Tamagotchi Uni’nin geliştirilmesi, işletilmesi ve yönetilmesinde güvenilirliğin ve maliyet verimliliğinin artırılmasına destek olmak için AWS hizmetlerinin mimaride iyi mi kullanıldığı özetlemek gerekirse açıklanmaktadır.
AWS IoT Çekirdeği
Tamagotchi Uni, kimlik doğrulama, bağlantı ve mesajlaşma için AWS IoT Core’u kullanıyor. Aygıt Gölgesi özelliği, dağıtılmış öğeleri ve içinde ne olduğu almak için gölgenin deltasını bir bayrak olarak kullanarak her Tamagotchi Uni aletinin durumunu yönetmek için kullanılır. Bu, aygıt ile AWS içinde verimli kontakt sağlayarak kusursuz etkileşimi kolaylaştırır.
AWS IoT Aygıt Yönetimi
Geliştirme ekibi, Tamagotchi Uni cihazlarının artan arzını yönetmenin zorlayıcı olacağını tahmin etti. Bundan dolayı, kapsamlı Tamagotchi Uni filosunu indekslemek ve her cihazın durumuna bakılırsa dinamik gruplar oluşturarak etkili kablosuz (OTA) güncellemeleri kolaylaştırmak için AWS IoT Device Management’ı kullandılar.
ÜcretsizRTOS
AWS’ye bağlanan Tamagotchi Uni aygıt yazılımı FreeRTOS üstünde çalışır ve bu da verimli sistem geliştirme amacıyla cihazdan buluta iletişimi uygulamak için ihtiyaç duyulan kaynak ve kod miktarını en aza indirir.
AWS Lambda’sı
Tamagotchi Uni, görevleri işlemek, yeni duyuruları iletmek ve varlıkları kaydetmek için AWS Lambda’yı kullanıyor.
Amazon DynamoDB
Tamagotchi Uni, Amazon DynamoDB’yi her ölçekte yüksek performanslı uygulamaları çalıştıran, tam olarak yönetilen, sunucusuz, anahtar değere haiz bir NoSQL veritabanı olarak kullanıyor.
Amazon Kolay Depolama Hizmeti (Amazon S3)
Tamagotchi Uni, Amazon S3’ü sektör lideri ölçeklenebilirlik, veri kullanılabilirliği, güvenlik ve performans sunan bir nesne depolama hizmeti olarak kullanıyor. Bu veri depolarının her biri Tamagotchi Uni içindeki çeşitli kaynakları yönetmek için kullanılır.
Amazon Süre Akışı
Tamagotchi Uni, öğelerin ve ek içeriklerin indirilmesi benzer biçimde kullanıcı eylemlerinin geçmiş verilerini toplamak için Amazon Timestream’i kullanıyor.
Firmware’in tüm cihazlara dağıtımındaki zorluklar
Ekip, Tamagotchi Uni’yi periyodik ürün yazılımı güncellemeleri vasıtasıyla yeni oyunlar ve içeriklerle güncellemek için AWS IoT Jobs’u kullanacak. Jobs aygıt yazılımı güncellemelerini kolay ve güvenli hale getirirken ekip, saat başına varsayılan maksimum iş yürütme sayısının (dakikada 1.000 birim) tüm cihazlar için güncellemeleri tamamlamak için fazlaca fazla zamana gereksinim duyulmasına yol açacağını öğrendi.
Uzayan süre, gecikmelere ve müşteriler için tutarsız bir deneyime niçin olacaktır. Bazı müşteriler, öteki kullananların güncellemeyi aldığını ve kendi cihazları güncel olmasa da yeni içeriğin keyfini çıkardıklarını öğrenebilir. Yeni içeriğin keyfini mümkün olan en kısa sürede çıkarmak isteyen müşteriler için, güncellemenin uzun süre beklenmesi ciddi bir strese niçin olabilir.
Dakikada gerçekleştirilebilecek maksimum iş yürütme sayısına bakılırsa kotayı ayarlamak mümkün olsa da sınırlamalar vardır.
Büyük ölçekli ürün yazılımı güncellemeleriyle zorlukların üstesinden gelmek
Bekleme sürelerini en aza indirmek için ekip, ürün yazılımı güncelleme sürecini, güncellemenin satın alan güncellemeyi kabul ettiğinde yürütülmesini sağlayacak şekilde değiştirdi. Güncelleme işlemi insan müdahalesi gerektirdiğinden tüm cihazlarda aynı anda gerçekleştirilememektedir. Ekip, sunucu sorgularının zamanlamasının müşterinin oyun ortamına ve vakit farklılıklarına bağlı olarak değişebileceğini göz önünde bulundurarak güncellemenin tüm cihazlara aynı anda dağıtılmasının gerekmeyeceğini belirledi. Yeni siyaset, güncelleme sorgusu icra eden müşterilere tertipli dağıtıma öncelik veriyor.
Yeni politikayı teknik olarak gerçekleştirmek için ekip, iş hedefini bireysel şeylerden ziyade dinamik şey grupları olacak şekilde iş teslimini devamlı bir iş olarak tasarladı (aşağıdaki şekle bakın). Dinamik nesne grupları, bir grup oluştururken AWS IoT’de kayıtlı nesneler için arama koşullarını ayarlamanıza olanak tanıyan bir AWS IoT Device Management özelliğidir. Bu durumda iş oluşturulduktan sonrasında dinamik şey grubuna bir şeyler eklendiğinde iş, yeni eklenen şeylere derhal teslim edilir. Bu, bilhassa belirlenen koşulları karşılayan cihazlara teslimat yaparak daha süratli ve daha verimli iş teslimatına olanak tanır.

Tamagotchi için ürün yazılımı dağıtımının mekanizması ve ustalığı
Filo indeksleme özelliği, koşulları karşılayan şeyleri otomatikman arar ve bu tarz şeyleri dinamik olarak şey grubuna ekler.
Bu projede dinamik şey grubuna ilişkin sorgu koşulları aşağıdaki dört koşulda yapılandırıldı:
- Firmware sürümü
shadow.reported
ilk versiyondan daha yüksek - Firmware sürümü
shadow.reported
dağıtılacak son olarak sürüm değil - Firmware sürümü
shadow.desired
teslim edilecek son olarak sürüm connectivity.timestamp
belirtilen UNIX periyodu milisaniyesinden daha büyük
Bu koşulların dördü de mantıksal AND operatörüyle birleştirildi.
Bağlı cihazları arama
Sorgu koşulları içinde dikkat çeken, bağlantı vakit damgasının kullanılmasıdır (connectivity.timestamp
) dördüncü arama koşulu olarak cihazın. Bu, işin yalnızca kanıtlanmış bir bağlantı kaydına haiz cihazları hedeflemesine olanak tanır. Bağlantı durumu (connectivity.connected:true
) sorguya da dahil edilebilir. Sadece bağlantı durumu bir şart olarak kullanılırsa, Tamagotchi Uni bir güncelleme sonrasında tekrardan başlatıldığında aygıt dinamik gruptan kaldırılır ve ürün yazılımı görüntüsü ve iş detayları doğrulanamaz. Bundan dolayı ekip, bağlantı durumu yerine bağlantı vakit damgasını şart olarak kullanmaya karar verdi. Koşuldaki UNIX periyodu milisaniyesi, dinamik grup oluşturma zamanlamasından bir saat öncesine ayarlanır. Bu yaklaşım, güncellemeleri müşterilerin güncellemelerin kullanılabilirliğine ilişkin sorgularının sırasına bakılırsa dinamik bir gruba ilave ederek verimli bir halde dağıtmamızı sağlamış oldu.
Firmware sürümlerini Device Shadow ile yönetme
Bahsedilen ilk üç arama koşulu Aygıt Gölgesini kullanır. Tamagotchi Uni, güncellemeler ve ek içerik de dahil olmak suretiyle tüm varlıklara yönelik güncelleme işaretlerinin yönetimi için Device Shadow’u kullanıyor. Cihazların yalnızca gölgede bir güncelleme olduğunda veri almasını sağlayarak kontakt sıklığının azaltılmasına destek verir. Tamagotchi Uni ek olarak, bilhassa dinamik grup sorguları 1-3’teki ürün yazılımı sürümlerini ve arama koşullarını yönetmek için Device Shadow’u kullanır. shadow.desired
sorgu 3’teki şart. Sadece bu yaklaşım bir güçlük teşkil ediyordu. Bu kadar fazlaca hedeflenen cihaza yönelik güncellemeleri bildirmek için her cihazın gölgesinin ayrı ayrı güncellenmesi gerekir. Netice olarak, tüm cihazların gölgelerinin güncellenmesi mühim oranda vakit aldı ve bu da dağıtım hızını etkiledi.
Ekip, çözüm olarak gölgeleri paralel olarak güncellemeye karar verdi. Aşağıdaki prosedürler ve yapılandırmalar güncelleme süresinin mühim seviyede azaltılmasına destek oldu:
- Yürütüldükten sonrasında dinamik grup oluşturma işleminin ilerleme durumunu seyretmek için bir SQS kuyruğu oluşturma.
- Güncellenen sorgu koşullarıyla dinamik grubun tekrardan oluşturulmasının ilerleme durumunu izleyen yoklama.
- Tüm hedef şeyler dinamik grubun üyesi olduğunda ve tekrardan oluşturma tamamlandığında, üye haline gelen şeyleri aynı anda 250’ye kadar cihazdan oluşan gruplar halinde alın ve SQS kuyruğuna gölge güncelleme isteğinde bulunan bir bildiri gönderin.
- SQS kuyruğuna bir bildiri gönderildiğinde gölgeyi güncellemek için paralel olarak bir Lambda çağrılır.
Bu akış, güncellemeleri satın alan sorgu sırasına bakılırsa verimli ve süratli bir halde dağıtarak kullanıcı deneyimini iyileştirdi.
Sistem performansını kontrol etme
Son olarak, yük testinin bir parçası olarak BANDAI, Tamagotchi Uni’nin erişim davranışını öykünmek eden fazlaca sayıda simüle edilmiş aygıt oluşturdu ve güncellemenin sorunsuz çalışmasını ve performansını doğrulayabildi. Kontrol, ekibin performansın istikrarlı olacağından ve geniş ölçekli erişim altında bile sürdürülebileceğinden güvenli olmasını sağlamış oldu.
Çözüm
Tamagotchi serisinin Wi-Fi bağlantısı özelliğine haiz ilk modeli olan Tamagotchi Uni, Tamagotchi fanatiklerinin cinsiyet, yaş yada milliyetten bağımsız olarak kendilerini bağlı hissedebilecekleri bir dünya yarattı. Bu gönderi, Tamagotchi Uni’nin güvenli ve güvenilir bağlantı elde etmek ve müşterileri bekletilmeden süratli bir halde yeni içerik güncellemeleri sunmak için AWS’yi iyi mi kullandığına ilişkin detaylı bir görünüm sağlamış oldu.
Bu blog yazısının Japonca versiyonunu burada bulabilirsiniz.
Yazarlar
Source: aws.amazon.com