数据库小组第N次小组会议
时间:5.30晚,9:30 ~ 11:30
主题:讨论android app与服务器之间数据同步的技术选型与实现
与会人:陈兆庭,黄志鹏,吴雪晴
讨论内容:
大体分析
关于数据同步,整体上有两部分,用户身份认证与数据同步。我们暂时没有查用户身份认证的问题,而主要查找了数据同步问题的解决方案。
同步问题,大致分这几个部分:服务器端的技术选型,android端数据选型,数据传输协议,同步策略。服务器端技术选型
关于语言,因为大家没什么兴趣再学php python了,而且java是安卓开发的常规选择、资料比较多,所以我们还是选择了java。
要用java,就几乎必然使用servlet。所以我们还是按照常规,选择servlet容器tomcat提供服务。
对于数据库选型,我们同样选择了常规的mysql。
关于如何存储用户数据,我们目前的想法是为每个用户建立分立的目录,在目录下类似安卓端,创建用户自己的数据库,保存用户的多媒体文件。安卓端数据选型
google有一个叫sync adapter的框架,可以支持后台自动同步和手动同步,并且支持认证。当然具体的认证方式和同步通信方式还是要我们自己写,但是这毕竟已经方便多了。数据传输协议
由于tomcat对http有较好的封装,所以我们打算使用http协议传输数据。
对于数据库中各个表项的多个键值使用xml封装,对于多媒体文件分割成多个小块分别发送。(想用ftp 23333 我凭什么要自己写一个文件传输协议(这里只是写博客的人突然皮了一下))更具体的协议没有确定。同步策略
放在最后面是因为我们没有讨论出来。
我们想了很多策略,如用标志位表示同步状态、用timestamp表示最后同步时间等,但似乎总是有bug。因此我们决定查一查资料再决定。(不知道为什么就随便)分(了个)工
(写博客的人觉得三个人不足以完成这么艰巨的任务,想弄几个人来帮忙)
陈兆庭:负责服务器端数据库部分的搭建、代码编写
黄志鹏:负责服务器端网络、通讯部分的搭建、代码编写
吴雪晴:负责安卓端的代码编写
数据库小组第N次小组会议的更多相关文章
- DeltaFish 校园物资共享平台 第五次小组会议
软工第五次小组会议 记录人:娄雨禛 会议地点:三教讨论区 会议时间:9:00-10:00 与会人员:软工小组成员 一.前端会议提要 前端分为“2+2”组合进行开发. 底层设计:齐天扬,刘鼎乾 界面美化 ...
- 【FZSZ2017暑假提高组Day1】确定小组
[问题描述] 有n个人坐成一排,这n个人都在某一个小组中,同一个小组的所有人所坐的位置一定是连续的. 有一个记者在现场进行采访,他每次采访都会询问一个人其所在的小组有多少人,被询问的每个人都给出了正确 ...
- Moodle 3.4中添加小组、大组、群
Moodle在高中应用时经常要用到年级.班级和小组,我们可以用群.大组.小组来代替. 小组设置:网站首页-->现有课程-->右上角的设置按钮-->更多-->用户-->小组 ...
- 【转】moodle中年级、班级、小组研讨
Moodle平台支持年级.班级.小组功能,提供了方便易用的分组工具.小组支持公开和封闭属性,配合教学功能模块,教师可以组织小组为单位的教学活动. 在Moodle中,年级.班级.小组主要是通过群组(co ...
- luogu P2776 [SDOI2007]小组队列
题目背景 嘛,这道非常简单的给大家提供信心的省选题洛谷居然没有! 这么简单的题怎么可以没有! 给大家提升士气是义不容辞的责任! 所以我就来补一下啦.. 值得一提的是,标程是我自己做的.. 很渣,因为数 ...
- CNCF 宣布成立应用交付领域小组,正式开启云原生应用时代
作者|赵钰莹 作为云原生领域的顶级开源社区, Cloud Native Computing Foundation (云原生基金会,以下简称 CNCF)近日宣布成立 Application Delive ...
- UniChat-软件工程小组-第一次作业-选题
软件工程小组项目文档 小组成员:赵有为.张天善.宋春雨.郭凯璐.孙楠.冯韵瑶 Uni-Chat项目文档 需求分析Need 日常生活中我们在使用Ubuntu等系统时都会因为QQ等聊天工具对基于Lin ...
- 【每日Scrum】第三天(4.13) TD学生助手Sprint1站立会议
TD学生助手Sprint1站立会议(4.13) 任务看板 站立会议内容 组员 昨天 今天 困难 签到 刘铸辉 (组长) 昨天完成了课程的增删改查功能 今天早晨静姐调整了下界面和配色,下午和宝月兄一起做 ...
- NoiseSystem数据库设计心得-洋芋好想飞
团队:洋芋好想飞 成员:乔祥硕 石高飞 杨慧慧 梁家豪 潘景渝 整理:乔祥硕 PM乔祥硕: 10月25日14:30到17:30,10月27日14:30到17:30,11月1日14:30到17:30,这 ...
随机推荐
- 链表的反转、合并(不借助额外list数组)
链表的基本操作:线性表 (单链表.循环链表-python实现) 反转链表: # -*- coding:utf-8 -*- class ListNode: def __init__(self, x): ...
- 我的Git教程 之 解决 git clone后无代码
解决 git clone 后无代码 前言:这个教程只适用于像我一样大致理解Git的原理,但是不太记得住Git命令的同学使用.所以具体原理只会提一下,具体可以参见Pro Git. 在另一篇 简明的教程 ...
- 阿里云安装配置Ghost
阿里云手动重装系统N次了,折腾不止. 系统环境 CentOS 6.3 X64 , 两块硬盘 系统 +数据盘 #重新挂载硬盘 [root@AY14040623435015772eZ ~]# fdisk ...
- 使用binlog2sql针对mysql进行数据恢复
MySQL闪回原理与实战 DBA或开发人员,有时会误删或者误更新数据,如果是线上环境并且影响较大,就需要能快速回滚.传统恢复方法是利用备份重搭实例,再应用去除错误sql后的binlog来恢复数据.此法 ...
- [Java初探08]__简单学习Java类和对象
前言 在前面的学习中,我们对面向对象的编程思想有了一个基本的了解,并且简单的了解了类和对象的定义.那么类和对象在Java语言中是如何表现的,这次,就从实际出发,学习一下一下类和对象在Java语言中的使 ...
- ptmalloc总结
内存管理的一般方法 C 风格的内存管理程序主要实现 malloc()和 free()函数. 内存池是一种半内存管理方法.Apache 使用了池式内存(pooled memory),将其连接拆分为各个阶 ...
- es6学习笔记8--Map数据结构
Map Map结构的目的和基本用法 JavaScript的对象(Object),本质上是键值对的集合(Hash结构),但是只能用字符串当作键.这给它的使用带来了很大的限制. var data = {} ...
- 状态压缩·一(状态压缩DP)
描述 小Hi和小Ho在兑换到了喜欢的奖品之后,便继续起了他们的美国之行,思来想去,他们决定乘坐火车前往下一座城市——那座城市即将举行美食节! 但是不幸的是,小Hi和小Ho并没有能够买到很好的火车票—— ...
- 手机调试 --- 通过chrome测试手机网站
移动端有时候我们要调试手机网站. Chrome怎么调试手机页面呢? 毕竟有时候手机支持的JS度跟PC不一样.最开始就遇见了.手机端浏览器不支持执行string.includes. PC端支持该函数, ...
- 你得学会并且学得会的Socket编程基础知识
这一篇文章,我将图文并茂地介绍Socket编程的基础知识,我相信,如果你按照步骤做完实验,一定可以对Socket编程有更好地理解. 本文源代码,可以通过这里下载 http://files.cnblog ...