PultrackBlog
TR
Senkronizasyon Sırasında Ne Olur? Çevrimdışı POS'u Başarıya veya Başarısızlığa Götüren Gizli An

Senkronizasyon Sırasında Ne Olur? Çevrimdışı POS'u Başarıya veya Başarısızlığa Götüren Gizli An

ÖzetÇevrimdışı-öncelikli POS mimarisi iyi kurulmuş bir yöntemdir, ancak küçük bir dükkan için en riskli an internetin kesildiği zaman değil — geri geldiğinde gerçekleşen uzlaştırmadır. Çakışan satışlar, yinelenen işlemler ve senkronizasyon sırasında stok uyumsuzlukları, çevrimdışı yeteneğin kendisi kadar dikkat almalıdır.

Pultrack'ı, çift para birimini destekleyen, çevrimdışı-öncelikli işlemlerde çalışan küçük perakendeciler için bir POS ve envanter uygulaması olarak inşa ettik. Bu nedenle sadece sistemin çevrimdışı çalışıp çalışmadığını değil, yeniden bağlandığı anın ne olduğunu düşünmekle çok zaman harcıyoruz. İkinci soru, hak ettiğinden çok daha az ilgi görmektedir.

Neden herkes aniden çevrimdışı-öncelikli mimariden bahsediyor?

POS sistemlerine yönelik son mimari yazılar benzer bir tema üzerinde yakınsıyor: bağlantı, bir bağımlılık değil bir senkronizasyon katmanı olarak ele alınmalıdır. Yerel depolama, kuyruğa alınan yazma işlemleri ve ağ geri geldiğinde otomatik uzlaştırma, artık gelişmiş bir özellik yerine standart model haline geliyor. Elektrik ve internet kesintilerinin sık yaşandığı pazarlardaki dükkanlar için bu değişim önemlidir, çünkü bağlantı kesildiğinde satışlar basitçe durmayabilir. Ortaya çıkan fark şudur: "çevrimdışı-uyumlu" — degradele bir yedek mod — ve "çevrimdışı-öncelikli," burada yerel cihaz birincil bilgi kaynağı ve bulut ikincildir.

Bu fark akademik değildir. Sadece bağlantı kesintisini tolere eden bir kasa, bağlantı düştüğünde indirimleri engelleyebilir, kataloğun bir kısmını gizleyebilir veya makbuz baskısını reddedebilir. Gerçek bir çevrimdışı-öncelikli tasarım fiyatlandırma kurallarını, envanter sayılarını ve makbuz oluşturmayı tamamen yerel tutar, böylece bir kasa görevlisi iyi bağlantı günü ile kötü bağlantı günü arasında hiçbir fark görmez.

Bağlantı geri geldiğinde gerçekte ne oluyor?

Bu, satıcıların daha az konuştuğu kısım ve çevrimdışı-öncelikli tasarımın günlük kullanımda gerçekte tutunup tutunmadığını belirleyen kısımdır. Bir telefon veya terminal saat veya günler boyunca çevrimdışı kaldıktan sonra yeniden bağlandığında, yerel işlemlerin bir kuyruğunu bu arada diğer cihazlarda veya bulutta ne olduğuyla uzlaştırması gerekir. İyi tasarlanmış sistemler idempotent API'ler kullanır, böylece yanlışlıkla iki kez gönderilen bir satış iki kez kaydedilmez. Aynı öğenin son biriminin iki farklı kaydın her ikisinden de satıldığı durumlar gibi çakışma çözme kuralları uygularlar.

Küçük bir dükkan için bu varsayımsal değildir. Bir kiosku düşünün: bir Wi-Fi bağlantılı tablet ve bir güç kesintisi sırasında yedek kasa olarak kullanılan bir telefon. Her ikisi de çevrimdışıyken aynı stok öğesine karşı satış yapıyorsa, birisi fazla satacaktır — tek soru, sistemin bunu senkronizasyon sırasında açıkça işaretleyip işaretlemediği veya sessizce bir satışın envanter ayarlamasını diğerinin ayarlamasıyla üzerine yazıp yazmamasıdır. Bu sistemleri inşa etmekten elde edilen prodüksiyon dersleri, belirli işlemleri (yazdırılmış makbuzu kesinleştirmek gibi) diğerlerine göre önceliklendirmeyi ve senkronizasyon kuyruğunu kritik yazma işlemlerinin kaybolmaması veya yanlış sıralanmaması için tasarlamayı vurgular.

"Çevrimdışı-öncelikli" dükkan tamamen çevrimiçi gibi mi çalışır?

Prensip olarak, evet — bu vaattir. Mevcut ürün literatüründe açıklanan çevrimdışı mod, işletmeyi çalıştırmak için yeterli olan tam bir moddur, sınırlandırılmış bir acil durum modu değildir: tam katalog erişimi, fiyatlandırma ve indirim kuralları, makbuz baskısı ve envanter güncellemeleri tamamen yerel olarak çalışması beklenir. Pratikte, bu çevrimdışı modun eksiksizliği satıcı ve "envanter güncellemesi" anlamına gelenlere göre çok farklılık gösterir.

Bir sistemin gerçekten dükkan açısından bağımsız olduğunu kabul etmeden önce sorulacak birkaç şey:

  • Çevrimdışı mod tam fiyat listenizi ve indirim kurallarını destekliyor mu, yoksa sadece önbelleğe alınan bir alt kümesi mi?
  • Hiç ağ olmadan, gerekli vergi alanları dahil olmak üzere geçerli bir makbuz yazdırabiliyor mu?
  • Aynı anda ayrı ayrı çevrimdışı hale gelen iki cihazda stok sayılarına ne oluyor?
  • Senkronizasyon süreci bir çakışmayı çözdüğünde görünür bir günlük veya bildirim var mı, yoksa sessizce mi oluyor?
  • Bir kasa görevlisi, kitaplarının geçici olduğunu bilebilmesi için hangi satışların "senkronizasyon beklediğini" ve hangilerinin onaylandığını görebiliyor mu?

Bazı mimariler gerçekten dükkan açısından bağımsız olacak şekilde tasarlanmıştır — mutfak yazıcıları, faturalandırma ve envanter yerel olarak çalışır, çünkü bu kasıtlı bir tasarım seçimidir, afterthought değil. Ancak "çevrimdışı-öncelikli" bir pazarlama ifadesi olarak yeterince gevşek kullanılıyor, bu da etiketin davranışı garantisi verdiğini varsaymaktan ziyade bu özellikleri kontrol etmeye değer.

Bu neden özellikle gelişmekte olan pazarlarda daha önemlidir?

Sık kesintilerin yaşandığı pazarlarda, senkronizasyon anı istikrarlı geniş bant olan bir pazarda yılda bir kez yaşanan edge case'ler yerine çok daha sık gerçekleşir. Her öğleden sonra iki saatlik bağlantı kaybı yaşayan bir dükkan, yılda bir kere edge case'e çarpmıyor — her gün uzlaştırma yolunu yaşıyor. Bu çakışma çözümünü doğru yapmayı daha önemli hale getirir, çünkü küçük hatalar birikendir: her senkronizasyondan sonra bir veya iki birim kadar yanlış olan bir stok sayısı sonunda rafın defterle eşleşmediği bir duruma dönüşür. Bu tam olarak kasa görevlilerinin yazılıma güveni bıraktığı ve bir deftere dönüştüğü tür uyumsuzluktur.

Ayrıca burada kanıt tabanı hakkında dürüst olmak gerekir: çevrimdışı-öncelikli POS mimarisi hakkında şu anda yayınlanan çoğu şey satıcı bloglarından, ürün pazarlama sayfalarından ve kendi çalışmalarını açıklayan bireysel mühendislerden geliyor, bağımsız araştırma veya geniş ölçekli çalışmalardan değil. Mimari mantık sağlamdır ve patern — yerel-önce depolama, arka plan senkronizasyonu, idempotent yazma işlemleri — kaynaklar arasında tutarlıdır, ancak güvenilirlik veya "durdurulamaz" çalışma süresi hakkındaki talepler satıcı konumlandırması olarak okunmalıdır, doğrulanmış sonuçlar değil.

Bir dükkan sahibi sistemini seçmeden önce gerçekte ne kontrol etmeli?

Temel patern — yerel veritabanı önce, daha sonra arka plan senkronizasyonu, makbuz yazdırma gibi kritik görevler için çakışma çözümü — nasıl standartlaşmışsa, ürünler arasındaki fark "çevrimdışı çalışıyor mu" değil "çevrimiçi geri gelmek ne kadar zarif" daha çoktur. Pultrack'te, bu bölümü kozmetik yerine çekirdek olarak ele alıyoruz: çift para birimi toplamları, stok seviyeleri ve makbuzlar cihazlar ve günler arasında bağlantı olmadan temiz bir şekilde uzlaşmalıdır. Bir kasa görevlisi, hangi satışların hala senkronizasyon beklemesine karşı tamamen onaylandığını açık terimlerle görebilmelidir. Bu "çevrimdışı çalışır" ifadesinden daha dar ve daha test edilebilir bir iddiadır ve bir sistemin güç çıkışının çoğu öğleden sonra yaşandığı bir dukkanda tutunup tutunmadığını tahmin eden şeydir.

Herhangi bir çevrimdışı-öncelikli POS'u değerlendiriyorsanız — bizimkini veya başka birinin — kasıtlı olarak bağlantısı kesilmiş bir test çalıştırmasından sonra senkronizasyon günlüğünü görmenizi isteyin. Çakışan bir stok güncellemesini nasıl çözdüğünü tam olarak gösterebilen bir satıcı, gerçek bir şey göstermektedir. Uygulamayı "internetsiz çalışıyor" deyebilen bir satıcı, en önemli olan kısım henüz size gösterilmemiştir.

Sıkça Sorulan Sorular

Çevrimdışı-uyumlu ile çevrimdışı-öncelikli POS arasındaki fark nedir?

Çevrimdışı-uyumlu sistemler bağlantı kesildiğinde sınırlı bir moda geri düşer, bazen indirimleri, kataloğun bir kısmını veya makbuz baskısını devre dışı bırakırlar. Çevrimdışı-öncelikli sistemler yerel cihazı her zaman birincil bilgi kaynağı olarak ele alır ve bulut senkronizasyonunu ikincil, asenkron bir işlem olarak ele alırlar, böylece tam işlevsellik bağlantıdan bağımsız olarak kullanılabilir.

Her ikisi de çevrimdışıyken iki cihaz aynı son öğeyi sattığında ne oluyor?

Bu, bir çakışma çözümü senaryosudur. İyi tasarlanmış çevrimdışı-öncelikli sistemler, her iki cihaz de senkronize olduğunda çakışan stok güncellemesini algılar ve ya elle incelemek için işaretler ya da tanımlanmış bir kural uygularlar (örneğin ilk-zaman damgası-kazanır). Zayıf tasarlanmış sistemler sessizce bir satışın envanter ayarlamasını diğerinin ayarlamasıyla üzerine yazabilir, bu da açıklanamayan eksikliklerin daha sonra ortaya çıkmasına neden olur.

Çevrimdışı-öncelikli POS hiç interneti olmadan vergi uyumlu makbuz yazdırabiliyor mu?

Bu sisteme bağlıdır. Gerçek çevrimdışı-öncelikli mimariler, canlı bağlantıya gerek duymadan gerekli vergi alanları da dahil olmak üzere tam makbuzlar yerel olarak oluşturmak ve yazdırmak için tasarlanmıştır. Çevrimdışı desteği talep eden bazı sistemler belirli makbuz veya fatura işlevleri için hala bağlantı gerektirdiğinden, bunu özellikle doğrulamaya değer.

Çevrimdışı-öncelikli POS kanıtlanmış teknoloji mi yoksa bu hala ortaya çıkıyor mu?

Mimari patern — yerel depolama önce, arka plan senkronizasyonu, idempotent yazma işlemleri, çakışma çözümü — şimdi satıcılar ve bağımsız mühendislik yazıları arasında oldukça tutarlıdır. Ancak çoğu kamu kanıtı satıcı bloglarından ve bireysel oluşturuculardan gelir, bağımsız çalışmalardan değil. Bu nedenle ölçekte güvenilirlik hakkındaki talepler doğrulanmış gerçek yerine satıcı konumlandırması olarak ele alınmalıdır.

Çevrimdışı-öncelikli bir sisteme güvenmeden önce küçük bir dükkan sahibinin ne test etmesi gerekir?

Kasıtlı olarak bağlantıyı kesin, iki cihazda stok çakışması oluşturacak birkaç satış yapın, sonra yeniden bağlanın ve senkronizasyon günlüğünü gözden geçirin. Çakışan stok güncellemesini nasıl çözdüğünü açıkça gösterebilen ve hangi satışların beklemede veya onaylı olduğunu gösteren bir sistem, sadece pazarlama dilinden ziyade gerçek çevrimdışı-öncelikli tasarımı göstermektedir.

Kaynaklar

Pultrack'ı deneyin✈ Telegram