митасов роман

228

Upload: kuchinskaya

Post on 22-Jun-2015

651 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: митасов роман
Митасов Роман
Новый плагинпитом и MSQLпланируем обогнать flashранние версии распространяются со спутником
Page 2: митасов роман

2

WebAgent

Page 3: митасов роман

3

Page 4: митасов роман

4

Page 5: митасов роман

5

Page 6: митасов роман

6

Page 7: митасов роман

7

Page 8: митасов роман

8

Page 9: митасов роман

9

Синхронизация

Page 10: митасов роман

10

Page 11: митасов роман

11

Page 12: митасов роман

12

Page 13: митасов роман

13

Page 14: митасов роман

14

Page 15: митасов роман

15

Page 16: митасов роман

16

Page 17: митасов роман

17

Page 18: митасов роман

18

Page 19: митасов роман

19

Page 20: митасов роман

20

Page 21: митасов роман

21

Page 22: митасов роман

22

Page 23: митасов роман

23

Зачем?

Page 24: митасов роман

24

Page 25: митасов роман

25

Page 26: митасов роман

26

Page 27: митасов роман

27

Page 28: митасов роман

28

Page 29: митасов роман

29

Page 30: митасов роман

30

Page 31: митасов роман

31

Page 32: митасов роман

32

Page 33: митасов роман

33

Page 34: митасов роман

34

Page 35: митасов роман

35

Page 36: митасов роман

36

Page 37: митасов роман

37

Page 38: митасов роман

38

Page 39: митасов роман

39

Page 40: митасов роман

40

Синхронизация интерфейса

Page 41: митасов роман

41

Транспорт:

Page 42: митасов роман

42

Транспорт:

1. Сервер

Page 43: митасов роман

43

Транспорт:

1. Сервер

2. Flash

Page 44: митасов роман

44

Транспорт:

1. Сервер

2. Flash

3. Клиентские хранилища

Page 45: митасов роман

45

Возможные подходы:

Page 46: митасов роман

46

Возможные подходы:

1. События

Page 47: митасов роман

47

Возможные подходы:

1. События

2. Состояния

Page 48: митасов роман

48

Возможные подходы:

1. События

2. Состояния

3. Смешанные

Page 49: митасов роман

49

Возможные подходы:

1. События

2. Состояния

3. Смешанные

Page 50: митасов роман

50

Page 51: митасов роман

51

Page 52: митасов роман

52

Сервер - WebAgent1.0 :

Page 53: митасов роман

53

Сервер - WebAgent1.0 :• Синхронизация смешанная

Page 54: митасов роман

54

Client

Page 55: митасов роман

55

Client ClientClient Client Client

Page 56: митасов роман

56

Server

Client ClientClient Client Client

Page 57: митасов роман

57

Server

Client ClientClient Client Client

Page 58: митасов роман

58

Server

Client ClientClient Client Client

Page 59: митасов роман

59

Server

Client ClientClient Client Client

Page 60: митасов роман

60

Server

Client ClientClient Client Client

Page 61: митасов роман

61

Server

Client ClientClient Client Client

Page 62: митасов роман

62

Server

Client ClientClient Client Client

Page 63: митасов роман

63

Server

Client ClientClient Client Client

Page 64: митасов роман

64

Сервер - WebAgent1.0 :• Синхронизация смешанная

Page 65: митасов роман

65

Сервер - WebAgent1.0 :• Синхронизация смешанная

Минусы:

Page 66: митасов роман

66

Сервер - WebAgent1.0 :• Синхронизация смешанная

Минусы:• Сетевые задержки

Page 67: митасов роман

67

Server

Client ClientClient Client Client

Page 68: митасов роман

68

Server

Client ClientClient Client Client

Page 69: митасов роман

69

Server

Client ClientClient Client Client

Page 70: митасов роман

70

Server

Client ClientClient Client Client

Page 71: митасов роман

71

Server

Client ClientClient Client Client

Page 72: митасов роман

72

Сервер - WebAgent1.0 :• Синхронизация смешанная

Минусы:• Сетевые задержки

Page 73: митасов роман

73

Сервер - WebAgent1.0 :• Синхронизация смешанная

Минусы:• Сетевые задержки• Много соединений с

сервером

Page 74: митасов роман

74

Flash – WebAgent 2.0 :

Page 75: митасов роман

75

Flash – WebAgent 2.0 :• Диспетчер в клиенте – router

Page 76: митасов роман

76

Flash – WebAgent 2.0 :• Диспетчер в клиенте – router• Есть хранилище, возможна

синхронизация состояний

Page 77: митасов роман

77

Flash – WebAgent 2.0 :• Диспетчер в клиенте – router• Есть хранилище, возможна

синхронизация состояний• Синхронизация событиями

Page 78: митасов роман

78

LocalConnection

Page 79: митасов роман

79

Page 80: митасов роман

80

Page 81: митасов роман

81

Page 82: митасов роман

82

Page 83: митасов роман

83

Page 84: митасов роман

84

Page 85: митасов роман

85

Page 86: митасов роман

86

Page 87: митасов роман

87

Page 88: митасов роман

88

Router

Page 89: митасов роман

89

Client ClientClient Client Client

Page 90: митасов роман

Client ClientClient Client Client

Fl Fl Fl Fl Fl

Page 91: митасов роман

Client ClientClient Client Client

Fl Fl Fl Fl Fl

Router

Page 92: митасов роман

92

Server

Client ClientClient Client Client

Fl Fl Fl Fl Fl

Router

Page 93: митасов роман

93

Server

Client ClientClient Client Client

Fl Fl Fl Fl Fl

Router

Page 94: митасов роман

94

Server

Client ClientClient Client Client

Fl Fl Fl Fl Fl

Router

Page 95: митасов роман

95

Server

Client ClientClient Client Client

Fl Fl Fl Fl Fl

Router

Page 96: митасов роман

96

Flash – WebAgent 2.0 :• Диспетчер в клиенте – router• Есть хранилище, возможна

синхронизация состояний• Синхронизация событиями

Page 97: митасов роман

97

Flash – WebAgent 2.0 :• Диспетчер в клиенте – router• Есть хранилище, возможна

синхронизация состояний• Синхронизация событиями

Минусы :

Page 98: митасов роман

98

Flash – WebAgent 2.0 :• Диспетчер в клиенте – router• Есть хранилище, возможна

синхронизация состояний• Синхронизация событиями

Минусы :• Глюки флеша

Page 99: митасов роман

99

Flash – WebAgent 2.0 :

“Подводные камни”:

Page 100: митасов роман

100

Flash – WebAgent 2.0 :

“Подводные камни”:• Хрупкость системы

Page 101: митасов роман

101

Page 102: митасов роман

102

Page 103: митасов роман

103

WebStorage – WebAgent 3.0 :

Page 104: митасов роман

104

WebStorage – WebAgent 3.0 :• Синхронизация состояний

Page 105: митасов роман

105

Синхронизация состояний

Page 106: митасов роман

106

Router

Page 107: митасов роман

Router

Page 108: митасов роман

Router

Page 109: митасов роман

Router

Page 110: митасов роман

110

Router

Page 111: митасов роман

111

Router

Page 112: митасов роман

112

Page 113: митасов роман

113

Page 114: митасов роман

114

Page 115: митасов роман

115

Page 116: митасов роман

116

Page 117: митасов роман

117

Page 118: митасов роман

118

Page 119: митасов роман

119

WebStorage – WebAgent 3.0 :• Синхронизация состояний

Page 120: митасов роман

120

WebStorage – WebAgent 3.0 :• Синхронизация состояний• Задача выбора роутера

Page 121: митасов роман

121

Выбор роутера

Page 122: митасов роман

122

Page 123: митасов роман

123

Page 124: митасов роман

124

Page 125: митасов роман

125

Page 126: митасов роман

126

Page 127: митасов роман

127

router

Page 128: митасов роман

128

router

Page 129: митасов роман

129

router

Page 130: митасов роман

130

router

Write(window_id)

Page 131: митасов роман

131

router

Write(window_id)

Page 132: митасов роман

132

router

Write(window_id)

Page 133: митасов роман

133

Write(window_id)

Page 134: митасов роман

134

router

Write(window_id)

Page 135: митасов роман

135

router

Write(window_id)

Page 136: митасов роман

136

router

Write(window_id)

onbeforeunload

Page 137: митасов роман

137

router

Write(window_id)

onbeforeunload

Write(false)

Page 138: митасов роман

138

router

Write(window_id)

onbeforeunload

Write(false)

onstorage

Page 139: митасов роман

139

Page 140: митасов роман

140

Page 141: митасов роман

141

Read(window_id)

Page 142: митасов роман

142

Read(window_id)

Page 143: митасов роман

143

Read(window_id)

Page 144: митасов роман

144

Page 145: митасов роман

145

Page 146: митасов роман

146

Page 147: митасов роман

147

Page 148: митасов роман

148

Page 149: митасов роман

149

WebStorage – WebAgent 3.0 :• Синхронизация состояний• Задача выбора роутера

Page 150: митасов роман

150

WebStorage – WebAgent 3.0 :• Синхронизация состояний• Задача выбора роутера

“Подводные камни”:

Page 151: митасов роман

151

WebStorage – WebAgent 3.0 :• Синхронизация состояний• Задача выбора роутера

“Подводные камни”:• Баги реализации в браузерах

Page 152: митасов роман

152

Баги реализации в браузерах:

Page 153: митасов роман

153

Баги реализации в браузерах:• onstorage

Page 154: митасов роман

154

onStorage

Page 155: митасов роман

155

localStorage.testvar = 0;

Page 156: митасов роман

156

localStorage.testvar = 0;

for(var i = 0; i < 3; i++) {

}

Page 157: митасов роман

157

localStorage.testvar = 0;

for(var i = 0; i < 3; i++) {

localStorage.testvar++;

}

Page 158: митасов роман

158

localStorage.testvar = 0;

console.log(localStorage.testvar);

for(var i = 0; i < 3; i++) {

localStorage.testvar++;

console.log(localStorage.testvar);

}

Page 159: митасов роман

159

window.addEventListener(‘storage’, function (e) {

}, true)

Page 160: митасов роман

160

window.addEventListener(‘storage’, function (e) {

console.log(e.key)

}, true)

Page 161: митасов роман

161

window.addEventListener(‘storage’, function (e) {

console.log(e.key, e.newValue )

}, true)

Page 162: митасов роман

162

window.addEventListener(‘storage’, function (e) {

console.log(e.key, e.newValue, e.oldValue)

}, true)

Page 163: митасов роман

163

window.addEventListener(‘storage’, function (e) {

console.log(e.key, e.newValue, e.oldValue, localStorage.testvar)

}, true)

Page 164: митасов роман

164

Page 165: митасов роман

165

for (…

Page 166: митасов роман

166

for (… addEvent…

Page 167: митасов роман

167

Page 168: митасов роман

Chrome, Opera, FF6+

Page 169: митасов роман

169

Chrome, Opera, FF6+Таб 1 – цикл

Page 170: митасов роман

170

Chrome, Opera, FF6+Таб 1 – цикл Таб 2 – addEventList…

Page 171: митасов роман

171

0

Chrome, Opera, FF6+Таб 1 – цикл Таб 2 – addEventList…

Page 172: митасов роман

172

01

Chrome, Opera, FF6+Таб 1 – цикл Таб 2 – addEventList…

Page 173: митасов роман

173

012

Chrome, Opera, FF6+Таб 1 – цикл Таб 2 – addEventList…

Page 174: митасов роман

174

0123

Chrome, Opera, FF6+Таб 1 – цикл Таб 2 – addEventList…

Page 175: митасов роман

175

0123

testvar 0 null 3

Chrome, Opera, FF6+Таб 1 – цикл Таб 2 – addEventList…

Page 176: митасов роман

176

0123

testvar 0 null 3

Chrome, Opera, FF6+Таб 1 – цикл Таб 2 – addEventList…

Page 177: митасов роман

177

0123

testvar 0 null 3

Chrome, Opera, FF6+Таб 1 – цикл Таб 2 – addEventList…

Page 178: митасов роман

178

0123

testvar 0 null 3

Chrome, Opera, FF6+Таб 1 – цикл Таб 2 – addEventList…

Page 179: митасов роман

179

0123

testvar 0 null 3

Chrome, Opera, FF6+Таб 1 – цикл Таб 2 – addEventList…

Page 180: митасов роман

180

0123

testvar 0 null 3

Chrome, Opera, FF6+Таб 1 – цикл Таб 2 – addEventList…

Page 181: митасов роман

181

0123

testvar 0 null 3

Chrome, Opera, FF6+Таб 1 – цикл Таб 2 – addEventList…

Page 182: митасов роман

182

0123

testvar 0 null 3testvar 1 0 3

Chrome, Opera, FF6+Таб 1 – цикл Таб 2 – addEventList…

Page 183: митасов роман

183

0123

testvar 0 null 3testvar 1 0 3testvar 2 1 3

Chrome, Opera, FF6+Таб 1 – цикл Таб 2 – addEventList…

Page 184: митасов роман

184

0123

testvar 0 null 3testvar 1 0 3testvar 2 1 3testvar 3 2 3

Chrome, Opera, FF6+Таб 1 – цикл Таб 2 – addEventList…

Page 185: митасов роман

185

Многозадачность

Page 186: митасов роман

186

Многозадачность:• Chrome и IE – в каждом табе / окное

Page 187: митасов роман

187

Многозадачность:• Chrome и IE – в каждом табе / окное• Opera – в каждом iframe

Page 188: митасов роман

188

Многозадачность:• Chrome и IE – в каждом табе / окное• Opera – в каждом iframe• FF – один на все окна / табы

Page 189: митасов роман

189

Page 190: митасов роман

190

FF3.6Таб 1 – цикл Таб 2 – addEventList…

Page 191: митасов роман

191

0

FF3.6Таб 1 – цикл Таб 2 – addEventList…

Page 192: митасов роман

192

0 undef undef undef 0

FF3.6Таб 1 – цикл Таб 2 – addEventList…

Page 193: митасов роман

193

0 undef undef undef 0

FF3.6Таб 1 – цикл Таб 2 – addEventList…

Page 194: митасов роман

194

0 undef undef undef 0

FF3.6Таб 1 – цикл Таб 2 – addEventList…

Page 195: митасов роман

195

0 undef undef undef 0

FF3.6Таб 1 – цикл Таб 2 – addEventList…

Page 196: митасов роман

196

0 undef undef undef 0

FF3.6Таб 1 – цикл Таб 2 – addEventList…

Page 197: митасов роман

197

0 undef undef undef 0

FF3.6Таб 1 – цикл Таб 2 – addEventList…

Page 198: митасов роман

198

0 undef undef undef 0

FF3.6Таб 1 – цикл Таб 2 – addEventList…

Page 199: митасов роман

199

01

undef undef undef 0

FF3.6Таб 1 – цикл Таб 2 – addEventList…

Page 200: митасов роман

200

01

undef undef undef 0undef undef undef 1

FF3.6Таб 1 – цикл Таб 2 – addEventList…

Page 201: митасов роман

201

012

undef undef undef 0undef undef undef 1

FF3.6Таб 1 – цикл Таб 2 – addEventList…

Page 202: митасов роман

202

012

undef undef undef 0undef undef undef 1undef undef undef 2

FF3.6Таб 1 – цикл Таб 2 – addEventList…

Page 203: митасов роман

203

0123

undef undef undef 0undef undef undef 1undef undef undef 2

FF3.6Таб 1 – цикл Таб 2 – addEventList…

Page 204: митасов роман

204

0123

undef undef undef 0undef undef undef 1undef undef undef 2undef undef undef 3

FF3.6Таб 1 – цикл Таб 2 – addEventList…

Page 205: митасов роман

205

Page 206: митасов роман

206

IE8Таб 1 – цикл Таб 2 – addEventList…

Page 207: митасов роман

207

0

IE8Таб 1 – цикл Таб 2 – addEventList…

Page 208: митасов роман

208

01

IE8Таб 1 – цикл Таб 2 – addEventList…

Page 209: митасов роман

209

012

IE8Таб 1 – цикл Таб 2 – addEventList…

Page 210: митасов роман

210

0123

IE8Таб 1 – цикл Таб 2 – addEventList…

Page 211: митасов роман

211

0123

undef undef undef 3

IE8Таб 1 – цикл Таб 2 – addEventList…

Page 212: митасов роман

212

0123

undef undef undef 3

IE8Таб 1 – цикл Таб 2 – addEventList…

Page 213: митасов роман

213

0123

undef undef undef 3

IE8Таб 1 – цикл Таб 2 – addEventList…

Page 214: митасов роман

214

0123

undef undef undef 3

IE8Таб 1 – цикл Таб 2 – addEventList…

Page 215: митасов роман

215

0123

undef undef undef 3

IE8Таб 1 – цикл Таб 2 – addEventList…

Page 216: митасов роман

216

0123

undef undef undef 3

IE8Таб 1 – цикл Таб 2 – addEventList…

Page 217: митасов роман

217

0123

undef undef undef 3undef undef undef 3

IE8Таб 1 – цикл Таб 2 – addEventList…

Page 218: митасов роман

218

0123

undef undef undef 3undef undef undef 3undef undef undef 3

IE8Таб 1 – цикл Таб 2 – addEventList…

Page 219: митасов роман

219

0123

undef undef undef 3undef undef undef 3undef undef undef 3undef undef undef 3

IE8Таб 1 – цикл Таб 2 – addEventList…

Page 220: митасов роман

220

Баги реализации в браузерах:• Onstorage

Page 221: митасов роман

221

Баги реализации в браузерах:• Onstorage• IE8+

Page 222: митасов роман

222

Нюансы IE8+:

Page 223: митасов роман

223

Нюансы IE8+:• Асинхронные тормоза на записи

Page 224: митасов роман

224

Нюансы IE8+:• Асинхронные тормоза на записи• Отложенный момент записи на диск

Page 225: митасов роман

225

Нюансы IE8+:• Асинхронные тормоза на записи• Отложенный момент записи на диск• Данные могут разъехаться

Page 226: митасов роман

226

Нюансы IE8+:• Асинхронные тормоза на записи• Отложенный момент записи на диск• Данные могут разъехаться• 64 IE на 64 Win

Page 227: митасов роман

227

Page 228: митасов роман

Роман МитасовПрограммист, WebAgent

[email protected]

СПАСИБО!