Aracılığıyla paylaş


Serileştirme Hizmetleri

Microsoft RPC, verileri kodlamak ve kodunu çözmek için topluca verileri seri hale getirme olarak adlandırılan iki yöntemi destekler. Serileştirme, verilerin denetlendiğiniz arabelleklere göre sıralandığı ve özetlenmemiş olduğu anlamına gelir. Bu, saptamaların ve RPC çalışma zamanı kitaplığının hazırlama arabellekleri için tam denetime sahip olduğu ve işlemin saydam olduğu geleneksel RPC kullanımından farklıdır. Kalıcı medya, şifreleme vb. üzerinde depolama için arabelleği kullanabilirsiniz. Verileri kodladığınızda, RPC saptamaları verileri bir arabelleğe sıralar ve arabelleği size geçirir. Verilerin kodunu çözdiğinizde, içindeki verileri içeren bir hazırlama arabelleği sağlarsınız ve veriler arabellekten belleğe özetlenmez. Yordam veya tür temelinde seri hale getirebilirsiniz.

Not

pickling terimi, serileştirmeyi açıklamak için geliştiriciler arasında yaygın olarak kullanılır. Aslında, Windows SDK örnekleri RPC serileştirme örnek programlarını koruyan pickle adlı bir dizin içerir.

 

Serileştirme, verileri başka amaçlarla hazırlamaya ve özetlememeye yönelik RPC mekanizmalarından yararlanır. Örneğin, bir akıştaki nesne grubunu seri hale getirmek için birkaç G/Ç işlemi kullanmak yerine, bir uygulama farklı türlerdeki çeşitli nesneleri arabelleğe seri hale getirerek ve ardından tüm arabelleği tek bir işlemde yazarak performansı iyileştirebilir. Serileştirme tutamaçlarını işleyen işlevler, kullandığınız serileştirme türünden bağımsızdır.

Başka bir örnek olarak, Rpc'nin yanı sıra Microsoft Windows Yuvaları (Winsock) gibi bir ağ aktarım mekanizması kullanmanız gerekiyorsa. RPC serileştirmesi ile programınız, verilerinizi arabelleklere hazırlayan işlevlere çağrı yapabilir ve ardından winsock kullanarak bu verileri iletebilir. Uygulamanız veri aldığında, Winsock yordamları tarafından doldurulan arabelleklerden verilerin özetini kaldırmak için RPC serileştirme mekanizmasını kullanabilir. Bu, RPC stilindeki uygulamaların birçok avantajını sağlar ve aynı zamanda RPC dışı aktarım mekanizmalarını kullanmanızı sağlar.

Serileştirmeyi ağ iletişimleriyle ilgili olmayan amaçlar için de kullanabilirsiniz. Örneğin, verileri bir arabelleğe sıralamak için RPC kodlama işlevlerini kullandığınızda, başka bir uygulama tarafından kullanılmak üzere bir dosyada depolayabilirsiniz. Ayrıca şifreleyebilirsiniz. Hatta bir veritabanındaki verilerin donanımdan ve işletim sisteminden bağımsız bir gösterimini depolamak için bile kullanabilirsiniz.

Aşağıdaki konular, Microsoft RPC'nin desteklediği serileştirme hizmetlerinin bir tartışmasını sunar: