본문 바로가기
[web network] SPDY ( 스피디 ) [web network] SPDY ( 스피디 ) Wikihttp://d2.naver.com/helloworld/140351http://www.slideshare.net/oddpoet/spdy-13231459 -두문자어가 아니며, Speedy 를 기반으로 구글이 만든 단어이다.스피디 라고 읽는다. -구글이 개발한 비표준 개방형 네트워크 프로토콜이다. ( HTTP 2.0 에 들어갈 예정 ) -SPDY 가 등장한 배경은 다음과 같다. 더 많은 리소스 다수의 도메인 동적 동작 보안이 중요한 이슈 -웹 페이지 부하 레이턴시를 줄이고, 웹 보안을 개선한다.압축, 다중화(Multiplexing, Pipiline 과는 다르다), 우선 순위 설정을 통해 레이턴시를 감소한다. -하나의 소켓 연결을 통해 페이지를 구성하는 .. 2018. 5. 6.
Efficient Android Threading #1 자바의 멀티스레딩,안드로이드 스레드 Efficient Android Threading #1 자바의 멀티스레딩,안드로이드 스레드 이 글은 Efficient Android Threading 의 일부 내용만 발췌한 내용입니다.자세한 내용은 책을 구입해서 보세용. -동시 실행 설계 자원의 생성과 해체의 빈도를 감소시키기 위해 항상 새로운 스레드를 만드는 것보다 재사용을 권장한다. 필요 이상으로 스레드를 사용하지 않는다. 사용하는 스레드가 많을수록 더 많은 메모리와 프로세서 시간이 소비된다. -App 관점에서 스레드는 UI, 바인더, 백그라운드 thread 로 3가지 유형이 있다. -바인더 스레드는 IPC 에 사용된다.각 프로세스는 Thread pool 을 유지한다.Thread pool 은 종료되거나 재생성되지 않지만, 프로세스 안에서 다른 스레드.. 2018. 3. 17.
[Java Concurrency] 활동성 최대로 높이기 #2 [Java Concurrency] 활동성 최대로 높이기 #2 10.2. 데드락 방지 및 원인 추적 - 한 번에 하나 이상의 락을 사용하지 않는 프로그램은 락의 순서에 의한 데드락이 발생하지 않는다. 물론 그다지 실용적이지 않은 방법일 수 있지만, 가능하다면 한 번에 하나 이상의 락을 사용하지 않도록 프로그램을 만들어 보는 것도 좋다. - 여러 개의 락을 사용해야만 한다면 락을 사용하는 순서 역시 설계 단계부터 충분히 고려해야 한다. 설계 과정에서 여러 개의 락이 서로 함께 동작하는 부분을 최대한 줄이고, 락의 순서를 지정하는 규칙을 정해 문서로 남기고 그 규칙을 정확하게 따라서 프로그램을 작성해야 한다. - 세세한 수준에서 락을 관리하는 프로그램에서는 두 단계의 전략으로 데드락 발생 가능성이 없는지를 확.. 2017. 5. 2.
[Java Concurrency] 구성 단위 #1 [Java Concurrency] 구성 단위 #1 5.1. 동기화된 컬렉션 클래스 - 동기화되어 있는 컬렉션 클래스의 대표 주자는 Vector 와 Hashtable 이다. - JDK 1.2 부터는 Collections.synchronizedXxx 메소드를 사용해 이와 비슷하게 동기화되어 있는 몇 가지 클래스를 만들어 사용할 수 있게 됐다. 이와 같은 클래스는 모두 public 으로 선언된 모든 메소드를 클래스 내부에 캡슐화해 내부의 값을 한 번에 한 스레드만 사용할 수 있도록 제어하면서 스레드 안전성을 확보하고 있다. - 동기화된 컬렉션 클래스는 스레드 안전성을 확보하고 있기는 하다. 하지만 여러 개의 연산을 묶어 하나의 단일 연산처럼 활용해야 할 필요성이 항상 발생한다. - 동기화된 컬렉션 클래스는 대.. 2017. 4. 20.
[iOS Study] NSUserDefaults [iOS Study] NSUserDefaults 출처 : 아론 힐리가스의 iOS 프로그래밍 -사용자의 환경설정(preferences) 을 가진 plist 가 각 앱 번들 안에 저장된다.개발자는 NSUserDefaults 클래스를 사용하여 이 plist 에 접근할 수 있다.또한 앱의 환경설정 plist 는 설정 앱에서 수정할 수 있다.이를 허용하려면 앱 안에 설정 번들(settings bundle)을 만들어야 한다. -사용자의 기본 설정(default) 집합은 키-값 쌍의 모음이다.키는 기본 설정의 이름이고 값은 키에 해당하는 사용자가 선호하는 것을 나타내는 데이터이다.공유 사용자 기본값 객체에 그 키의 값을 요청한다.이것은 딕셔너리에서 객체를 가져오는 것과 다르지 않다. NSUserDefaults *de.. 2016. 3. 27.
[iOS Study] 오토 레이아웃 소개 [iOS Study] 오토 레이아웃 소개 출처 : 아론 힐리가스의 iOS 프로그래밍 -아이패드와 아이폰 모두에서 실행 가능한 단일 앱을 유니버설 앱(Universal application) 이라 한다. -Deployment info 섹션으로 이동하여 Devices 팝업에서 iPhone 을 Universal 로 변경하면 된다. -절대 좌표 체계는 레이아웃이 깨지기 쉽다.미리 화면 크기를 알고 있다고 가정하기 때문이다. 오토 레이아웃을 사용하여 상대적인 방식으로 뷰들의 레이아웃을 기술할 수 있다.이것은 실행 시에 frames 를 결정하도록 해준다.따라서 frames 의 정의가 프로그램이 실행 중인 장비의 화면 크기를 고려할 수 있도록 한다. -레티나 장비는 비레티나 장비보다 두 배 많은 픽셀을 가지고 있지만.. 2016. 3. 3.
반응형