avatar的实现

类别:编程语言 点击:0 评论:0 推荐:
avatar从程序角度来看主要是2方面的工作,一是web,这儿负责购买、更换服装等功能,二是客户端程序(如果需要的话),这儿主要负责下载更新和程序显示

当然,其实可以统一使用web来实现,不需要程序负责,程序仅仅调用web控件或者别的什么方式,把最终的现实直接交给web来完成

web的实现,没太大难度,如果要兼容性扩展性很好,比较简单的方法,是每次在用户更换服装以后,服务器生成一张最终的完成图,那样,其它程序使用就不需要重新拼接一次了

当然,为了方便客户端检索avatar是否更新,最好要纪录一下avatar的更新次数,如果客户端有缓存机制的话,可以根据这个值来判断是否需要重新下载新的形象,减少服务器负载

关于客户端,如果简单一点,每次下载一次最终生成的完成图显示就可以了

如果复杂一点,自己管理一个本地永久缓存,保存最近下载的一定人数的形象,如果再次使用,先判断是否需要下载,再下载。这种方法,适合人数不多,很容易发生中缓存的情况,如果在线人数上十万,可能就没太大意义,那还不如每次需要的时候下载简单。不过主要看实现难度,毕竟这种缓存在客户端,不会带来太大的负面影响,而且总会有些用处的

另外,就是关于下载了
如果下载很频繁,其实可以做一个线程池来下载,线程池不用太大。
如果下载不是很频繁,其实可以简单一点,多线程下载,需要的时候单独开一个线程下载,然后一个回调函数处理状态
最后,单线程下载,维护一张下载列表就ok了

本文地址:http://com.8s8s.com/it/it26423.htm