时间:5.30晚,9:30 ~ 11:30

主题:讨论android app与服务器之间数据同步的技术选型与实现

与会人:陈兆庭,黄志鹏,吴雪晴

讨论内容

  1. 大体分析
    关于数据同步,整体上有两部分,用户身份认证与数据同步。我们暂时没有查用户身份认证的问题,而主要查找了数据同步问题的解决方案。
    同步问题,大致分这几个部分:服务器端的技术选型,android端数据选型,数据传输协议,同步策略。

  2. 服务器端技术选型
    关于语言,因为大家没什么兴趣再学php python了,而且java是安卓开发的常规选择、资料比较多,所以我们还是选择了java。
    要用java,就几乎必然使用servlet。所以我们还是按照常规,选择servlet容器tomcat提供服务。
    对于数据库选型,我们同样选择了常规的mysql。
    关于如何存储用户数据,我们目前的想法是为每个用户建立分立的目录,在目录下类似安卓端,创建用户自己的数据库,保存用户的多媒体文件。

  3. 安卓端数据选型
    google有一个叫sync adapter的框架,可以支持后台自动同步和手动同步,并且支持认证。当然具体的认证方式和同步通信方式还是要我们自己写,但是这毕竟已经方便多了。

  4. 数据传输协议
    由于tomcat对http有较好的封装,所以我们打算使用http协议传输数据。
    对于数据库中各个表项的多个键值使用xml封装,对于多媒体文件分割成多个小块分别发送。(想用ftp 23333 我凭什么要自己写一个文件传输协议(这里只是写博客的人突然皮了一下))更具体的协议没有确定。

  5. 同步策略
    放在最后面是因为我们没有讨论出来。
    我们想了很多策略,如用标志位表示同步状态、用timestamp表示最后同步时间等,但似乎总是有bug。因此我们决定查一查资料再决定。

  6. (不知道为什么就随便)(了个)
    (写博客的人觉得三个人不足以完成这么艰巨的任务,想弄几个人来帮忙)
    陈兆庭:负责服务器端数据库部分的搭建、代码编写
    黄志鹏:负责服务器端网络、通讯部分的搭建、代码编写
    吴雪晴:负责安卓端的代码编写

数据库小组第N次小组会议的更多相关文章

  1. DeltaFish 校园物资共享平台 第五次小组会议

    软工第五次小组会议 记录人:娄雨禛 会议地点:三教讨论区 会议时间:9:00-10:00 与会人员:软工小组成员 一.前端会议提要 前端分为“2+2”组合进行开发. 底层设计:齐天扬,刘鼎乾 界面美化 ...

  2. 【FZSZ2017暑假提高组Day1】确定小组

    [问题描述] 有n个人坐成一排,这n个人都在某一个小组中,同一个小组的所有人所坐的位置一定是连续的. 有一个记者在现场进行采访,他每次采访都会询问一个人其所在的小组有多少人,被询问的每个人都给出了正确 ...

  3. Moodle 3.4中添加小组、大组、群

    Moodle在高中应用时经常要用到年级.班级和小组,我们可以用群.大组.小组来代替. 小组设置:网站首页-->现有课程-->右上角的设置按钮-->更多-->用户-->小组 ...

  4. 【转】moodle中年级、班级、小组研讨

    Moodle平台支持年级.班级.小组功能,提供了方便易用的分组工具.小组支持公开和封闭属性,配合教学功能模块,教师可以组织小组为单位的教学活动. 在Moodle中,年级.班级.小组主要是通过群组(co ...

  5. luogu P2776 [SDOI2007]小组队列

    题目背景 嘛,这道非常简单的给大家提供信心的省选题洛谷居然没有! 这么简单的题怎么可以没有! 给大家提升士气是义不容辞的责任! 所以我就来补一下啦.. 值得一提的是,标程是我自己做的.. 很渣,因为数 ...

  6. CNCF 宣布成立应用交付领域小组,正式开启云原生应用时代

    作者|赵钰莹 作为云原生领域的顶级开源社区, Cloud Native Computing Foundation (云原生基金会,以下简称 CNCF)近日宣布成立 Application Delive ...

  7. UniChat-软件工程小组-第一次作业-选题

    软件工程小组项目文档 小组成员:赵有为.张天善.宋春雨.郭凯璐.孙楠.冯韵瑶 Uni-Chat项目文档 需求分析Need ​ 日常生活中我们在使用Ubuntu等系统时都会因为QQ等聊天工具对基于Lin ...

  8. 【每日Scrum】第三天(4.13) TD学生助手Sprint1站立会议

    TD学生助手Sprint1站立会议(4.13) 任务看板 站立会议内容 组员 昨天 今天 困难 签到 刘铸辉 (组长) 昨天完成了课程的增删改查功能 今天早晨静姐调整了下界面和配色,下午和宝月兄一起做 ...

  9. NoiseSystem数据库设计心得-洋芋好想飞

    团队:洋芋好想飞 成员:乔祥硕 石高飞 杨慧慧 梁家豪 潘景渝 整理:乔祥硕 PM乔祥硕: 10月25日14:30到17:30,10月27日14:30到17:30,11月1日14:30到17:30,这 ...

随机推荐

  1. 计划任务crond服务

    什么是计划任务:后台运行,到了预定的时间就会自动执行的任务,前提是:事先手动将计划任务设定好.这就用到了crond服务 crond服务相关的软件包[root@MiWiFi-R3-srv ~]# rpm ...

  2. Grape教程-params

    参数 请求参数可以通过params获取,params是一个hash对象,包括GET.POST.PUT参数,以及路径字符串中的任何命名参数: get :public_timeline do Status ...

  3. Configuration problem: Failed to import bean definitions from relative location

    问题现象: 最近开始做新需求,然后在Tomcat上部署项目时,出现了如下报错: [12-05 09:54:27,161 ERROR] ContextLoader.java:351 - Context ...

  4. ps切图 切png图片——学习笔记

    第一步:新建一个图层,点击ps左上角“文件”,然后新建即可(或crtl+alt+n) 参数自己随便填,注意背景图片选择透明即可. 第二步:打开psd文件,点击工具中的“移动工具”,之后选中上面的“自动 ...

  5. Spring总结 1.装配bean

    本随笔内容要点如下: 依赖注入 Spring装配bean的方式 条件化装配 一.依赖注入 我理解的依赖注入是这样的:所谓的依赖,就是对象所依赖的其他对象.Spring提供了一个bean容器,它负责创建 ...

  6. 复刻smartbits的国产网络测试工具minismb-如何测试路由器

    复刻smartbits的国产网络性能测试工具minismb,是一款专门用于测试智能路由器,网络交换机的性能和稳定性的软硬件相结合的工具.可以通过此工具测试任何ip网络设备的端口吞吐率,带宽,并发连接数 ...

  7. 【webserver】使用python实现webserver,支持上传下载文件

    #!/usr/bin/env python """Simple HTTP Server With Upload. This module builds on BaseHT ...

  8. new image的使用

    在看别人的程序,用到了new image()这种方法,然而怎么看也不是很明白: 于是就上网搜,然而却没有一个人能够解开我心中的疑惑,因为没有一个人的程序是完整的, 即使我知道怎么用,但是我看不到效果就 ...

  9. js的浅复制和深复制

    1.浅复制VS深复制 本文中的复制也可以称为拷贝,在本文中认为复制和拷贝是相同的意思.另外,本文只讨论js中复杂数据类型的复制问题(Object,Array等),不讨论基本数据类型(null,unde ...

  10. C# WebAPI设置跨域

    设置前端跨域请求很简单,只需要两个步骤 1.安装package Install-Package Microsoft.AspNet.WebApi.Cors 2.WebApiConfig类中,Regist ...