Past
WWW/CGI/WAS/프레임워크
Present
MVC/루비 온 레일즈/스트러츠&스프링 프레임워크
Future
소셜 모바일 그리고 클라우드/ 비동기 프레임워크/경량 웹 프레임워크
Present
MVC/루비 온 레일즈/스트러츠&스프링 프레임워크
Future
소셜 모바일 그리고 클라우드/ 비동기 프레임워크/경량 웹 프레임워크
/프론트엔드 웹프레임워크/Play! 프레임워크
자바 웹 프레임워크 고려사항
1.고속프로토 타이핑 - 얼마나 빠르고 쉽게 프로토타이핑이 가능한가?
2.기능 - 얼마나 많은 기능들이 제공되는가?
3.사용성 - 얼마나 사용하기 쉬운가?
4.인기도 - 풍부한 도큐먼트와 커뮤니티의 지원이 쉬운가?
5.프레임워크 생태계 - 열성적인 오픈 소스 커뮤니티의 지원을 받는 프레임워크들은 스스로 진화하고 확장.
6.처리능력과 확장성
7.코드 유지보수와 업데이트의 용이성
8.UX, Look and feel - UI관련 기능
Present top 5 Java-based web frameworks
Spring MVC/Spring Boot
Grails
Dropwizard
Vert.x
Play
Spark
Vaadin
Ninja
Jodd
Spring MVC/Spring Boot
Grails
Dropwizard
Vert.x
Play
Spark
Vaadin
Ninja
Jodd
jHipster
비동기
비동기 Returns
Async ? Non-Blocking I/O?
집적도, 발열, 간섭… 물리적한계-> CPU성능 정체
CPU 코어 개수만 증가->멀티 코어의 성능 극대화!
“어차피 멀티 쓰레드로 감당할 수 없다면, 한번에 하나씩! 시간이 걸리는 작업은 맨뒤로 보내버리고,빨리빨리 처리하자!”
Node.js , Vert.x , Akka , Parallel Python,…
동기/비동기 프레임 워크
http://www.slideshare.net/brikis98/play-framework-async-io-with-java-and-scala
비동기 장점
1. 다운 스트림 느려짐에 민감하지 않음 2. 쉽게 다중 I/O 처리가 가능함
3. 많음 동시간 장기간 접속이 가능함
a. WebSockets
b. Comet c. Sever-Sent Events
플레이 사용 :
1. JVM 을 사용하고 있는가?
2. safety and functional programming 를 좋아하는가?
3. 팀이 도전에 적응할수 있는가?
4. full stack framework 를 원하는가?
5. 유연성을 원하는 가? nonblocking I/O , blocking I/O , CPU intensive tasks
, memory intensive tasks
플레이 사용 안함 :
1. play , scala , sbt 를 마스터 할 시간이 없다.
2. functional programming or static typing 을 싫어 한다.
댓글 없음:
댓글 쓰기