SlideShare une entreprise Scribd logo
1  sur  98
Télécharger pour lire hors ligne
Wowza 탐험기
BNSPRO
사원 한진수
Thursday, May 30, 13
Contents part1
1.발표자 소개
2.소개
1.장점
2.단점
3.비용
4.AddOn
3.구성
1.기본
2.확장
3.확장성 - 가상 시나리오
4.확장성 - 교훈
5.확장성 - Cloud Server
4.비교
5.맛 보기
Thursday, May 30, 13
Contents part2
1.분석
1.폴더 구조
2.App 만들기
3.Conf Directory
4.[wowza ip]:8086
5.*.stream
6.JMX
2.Getting Started
2.단일 서버 세팅
3.분산 서버 세팅
3.테스트
Thursday, May 30, 13
발표자 소개
이름 : 한진수
나이 : 23 (1991)
주말에 하는 일 : 카페가기, 자전거타기
특징 : 안산 토박이, 회사 막내
Thursday, May 30, 13
소개
Thursday, May 30, 13
소개 - 이름
Wowza Media System으로 개발 된 통합된 Server Software이다.
Live Streaming이나 On-Demand Video, Audio를 이용하여,
공인 & 내부 IP를 통하여 Laptop, Desktop, Mobile devices 등에서 볼 수 있다.
Java로 개발하였기에 Linux, Mac OS X, Unix, Windows에서 이용 가능하다.
다양한 프로토콜을 지원하여서 여러 기종에서 시청이 가능하다.
Thursday, May 30, 13
소개 - 장점
타 제품에 비해 노력이 들어갈 부분이 적다
JMX(Java Management eXtension)을 통한 시각적인 PC상태 관리가 가능하다.
Web상으로도 간략한 정보가 제공되어 현재 커넥션 수 등을 체크 가능하다
다양한 AddOn(부가기능)이 제공된다
타 제품에 비해 지원되는 기종 & 프로토콜이 많고, 성능이 우수하다
쉬운 확장(Scale Up)이 가능하다
Thursday, May 30, 13
소개 - 단점
가격이 비싸다
다양한 AddOn(부가기능)도 유료다.
Thursday, May 30, 13
소개 - 비용
영구 라이센스
995달러 한국 돈 약 110만원
AddOn구매시 추가 금액
한 달 라이센스
55달러 한국 돈 약 6.5만원
AddOn도 한 달 단위로 요금 지불.
Thursday, May 30, 13
소개 - AddOn
Thursday, May 30, 13
소개 - AddOn
유동적인 분산처리
Thursday, May 30, 13
소개 - AddOn
유동적인 분산처리
서버 Transcoding
Thursday, May 30, 13
소개 - AddOn
유동적인 분산처리
서버 Transcoding
Contents 미리 캐싱
Thursday, May 30, 13
소개 - AddOn
유동적인 분산처리
서버 Transcoding
DRM 설정
Contents 미리 캐싱
Thursday, May 30, 13
구성
Thursday, May 30, 13
구성 - 기본
Thursday, May 30, 13
구성 - 기본
Wowza Server
Thursday, May 30, 13
구성 - 기본
Wowza Server
Thursday, May 30, 13
구성 - 기본
Wowza Server
Thursday, May 30, 13
구성 - 기본
Wowza Server
Thursday, May 30, 13
구성 - 기본
Wowza Server
Thursday, May 30, 13
구성 - 확장
Wowza Server
Thursday, May 30, 13
특징
Thursday, May 30, 13
특징 - 확장성 - 가상시나리오
Wowza Server
Thursday, May 30, 13
특징 - 확장성 - Cloud의 교훈
Thursday, May 30, 13
특징 - 확장성 - Cloud의 교훈
서버를 늘려야 한다.
Thursday, May 30, 13
특징 - 확장성 - Cloud의 교훈
서버를 늘려야 한다.
근데 서버는 비쌉니다
Thursday, May 30, 13
특징 - 확장성 - Cloud의 교훈
서버를 늘려야 한다.
근데 서버는 비쌉니다
서버를 사면 둘 곳이 필요합니다.
Thursday, May 30, 13
특징 - 확장성 - Cloud의 교훈
서버를 늘려야 한다.
근데 서버는 비쌉니다
서버를 사면 둘 곳이 필요합니다.
아주 잠깐 사람들이 몰린거면 어떻게 합니까?
Thursday, May 30, 13
특징 - 확장성 - Cloud의 교훈
서버를 늘려야 한다.
근데 서버는 비쌉니다
서버를 사면 둘 곳이 필요합니다.
아주 잠깐 사람들이 몰린거면 어떻게 합니까?
잠깐만 치고 빠지는 그런 서버 없나요?
Thursday, May 30, 13
특징 - 확장성 - Cloud Server
Thursday, May 30, 13
특징 - 확장성 - Cloud Server
Thursday, May 30, 13
특징 - 확장성 - Cloud Server
...
Thursday, May 30, 13
특징 - 확장성 - Cloud Server
Wowza Server
Thursday, May 30, 13
특징 - 확장성 - Cloud Server
Wowza Server
Thursday, May 30, 13
특징 - 확장성 - Cloud Server
Wowza Server
Thursday, May 30, 13
특징 - 확장성 - Cloud Server
Wowza Server
Thursday, May 30, 13
특징 - 확장성 - Cloud Server
Wowza Server
Thursday, May 30, 13
특징 - 확장성 - Cloud Server
Wowza Server
Thursday, May 30, 13
특징 - 확장성 - Cloud Server
Wowza Server
Thursday, May 30, 13
특징 - 확장성 - Cloud Server 특징
필요할 때 쓰고 해지할 수 있다.
쓴 만큼 내므로 저렴하다.
공간을 차지하지 않는다.
Thursday, May 30, 13
비교
Thursday, May 30, 13
비교
Wowza Red5
가격 $995 Free ( Open Source )
지원 OS Windows, OS X, Linux Windows, Ubuntu(Linux), OS X
플랫폼
Flash (RTMP), iPhone ( HTTP Streaming),
Silvelight, QuickTime (RTSP), IPTV(MPEG-TS) Flash (RTMP)
언어 Java Java
Thursday, May 30, 13
활용방안
Thursday, May 30, 13
활용방안 - 사내방송 & 학교 교육 방송
Thursday, May 30, 13
활용방안 - 미디어 컨텐츠 시스템 구축
Thursday, May 30, 13
활용방안 - 심지어는..
Thursday, May 30, 13
분석
Thursday, May 30, 13
분석 - 폴더구조
Thursday, May 30, 13
분석 - 폴더구조
Thursday, May 30, 13
분석 - 폴더구조
application
사용자가 만든 app들이 보관 되어있는 폴더
Thursday, May 30, 13
분석 - 폴더구조
application
사용자가 만든 app들이 보관 되어있는 폴더
conf
app을 만들 때 같이 만들어야 하는 폴더
Thursday, May 30, 13
분석 - 폴더구조
Thursday, May 30, 13
분석 - 폴더구조
documentation
문서들이 저장되어있다.
이 문서는 온라인에서도 다운로드 가능하다.
Thursday, May 30, 13
분석 - 폴더구조
documentation
문서들이 저장되어있다.
이 문서는 온라인에서도 다운로드 가능하다.
examples
다양한 예제들이 있다.
예제 플레이어로 자주 쓰곤한다.
Thursday, May 30, 13
분석 - 폴더구조
documentation
문서들이 저장되어있다.
이 문서는 온라인에서도 다운로드 가능하다.
examples
다양한 예제들이 있다.
예제 플레이어로 자주 쓰곤한다.
logs
Access로그와 Error로그가 기록된다.
어떤 문제가 발생했을 때에는 여기부터 확인
한다.
Thursday, May 30, 13
분석 - App 만들기
[install-directory]/application/
만들고 싶은 App이름으로 디렉토리를 하나 만든다. 이름을 AppName이라고 생각합니다.
[install-directory]/conf/Application.xml
application.xml은 template이라고 봐도 좋다. 위치를 눈에 익힐 것.
[install-directory]/conf/AppName/Application.xml
conf 안에 AppName이라는 디렉토리를 만들고,
위에 쓴 Application.xml을 복사하여 디렉토리 안에 붙여넣는다.
Thursday, May 30, 13
분석 - App 만들기
[install-directory]/application/
만들고 싶은 App이름으로 디렉토리를 하나 만든다. 이름을 AppName이라고 생각합니다.
[install-directory]/conf/Application.xml
application.xml은 template이라고 봐도 좋다. 위치를 눈에 익힐 것.
[install-directory]/conf/AppName/Application.xml
conf 안에 AppName이라는 디렉토리를 만들고,
위에 쓴 Application.xml을 복사하여 디렉토리 안에 붙여넣는다.
끝
Thursday, May 30, 13
분석 - Conf Directory
Thursday, May 30, 13
분석 - Conf Directory
Directories
App 만들 때, 만든 디렉토리들이다.
각각의 Application.xml을 갖고 있다.
Thursday, May 30, 13
분석 - Conf Directory
Directories
App 만들 때, 만든 디렉토리들이다.
각각의 Application.xml을 갖고 있다.
Application.xml
App을 만들 때, 참고가 되는 xml 파일
Thursday, May 30, 13
분석 - Conf Directory
Directories
App 만들 때, 만든 디렉토리들이다.
각각의 Application.xml을 갖고 있다.
Application.xml
App을 만들 때, 참고가 되는 xml 파일
admin.password
admin과 password를 입력하는 곳이다. 딱
히 권한이 없어서 자유롭게 지우고 삭제 가능
Thursday, May 30, 13
분석 - Conf Directory
Directories
App 만들 때, 만든 디렉토리들이다.
각각의 Application.xml을 갖고 있다.
Application.xml
App을 만들 때, 참고가 되는 xml 파일
admin.password
admin과 password를 입력하는 곳이다. 딱
히 권한이 없어서 자유롭게 지우고 삭제 가능
그 외 등등..
라이센스를 설정, 서버 설정, HTTPStreamer
설정 등등.. 각종 설정이 있다.
Thursday, May 30, 13
분석 - Conf Directory - Application.xml
Stream Types
Stream>StreamType 에 존재
- default : H.264 / AAC
- record : 비디오 레코딩
- live : 비디오 컨텐츠 재생
- live-lowlatency
- live-record : live + record
- shoutcast : MP3 or AAC
- shoutcast-record : shout + record
- liverepeater-origin : 스트림 전달
- liverepeater-edge
- rtp-live : RTSP/RTP, TS restream
- rtp-live-record : rtp-live + record
Thursday, May 30, 13
분석 - *.stream file
- JSON 사용
{
uri : String
streamTimeout : Integer
reconnectionWaitTime : Integer
}
- uri
특정한 uri 를 지정합니다 ex) “udp://192.168.1.85”
- streamTimeout
스트림이 연결되기 까지 기다립니다. 단위 ms ex) 5000
- reconnectionWaitTime
재연결을 시도하는 사이에 기다리는 초입니다. 단위 ms ex) 5000
Thursday, May 30, 13
분석 - *.stream file
[install-directory]/content/
이 곳에 위치해야 합니다.
Thursday, May 30, 13
분석 - PORT 8086
[wowza ip]:8086
Thursday, May 30, 13
분석 - PORT 8086
[wowza ip]:8086
- /streammanager
- /connectioninfo
- /connectioncounts
- /serverinfo
server stream 구동
Server에 접속한 Client의 수
Connection 상태나 스트림 상세정보 등을 XML로 제공
서버 실행시간, 전체 커넥션 상태 등을 XML로 제공
Thursday, May 30, 13
분석 - PORT 8086
[wowza ip]:8086
- /streammanager
- /connectioninfo
- /connectioncounts
- /serverinfo
server stream 구동
Server에 접속한 Client의 수
Connection 상태나 스트림 상세정보 등을 XML로 제공
서버 실행시간, 전체 커넥션 상태 등을 XML로 제공
Thursday, May 30, 13
분석 - PORT 8086
[wowza ip]:8086
- /streammanager
- /connectioninfo
- /connectioncounts
- /serverinfo
server stream 구동
Server에 접속한 Client의 수
Connection 상태나 스트림 상세정보 등을 XML로 제공
서버 실행시간, 전체 커넥션 상태 등을 XML로 제공
Thursday, May 30, 13
분석 - PORT 8086
[wowza ip]:8086
- /streammanager
- /connectioninfo
- /connectioncounts
- /serverinfo
server stream 구동
Server에 접속한 Client의 수
Connection 상태나 스트림 상세정보 등을 XML로 제공
서버 실행시간, 전체 커넥션 상태 등을 XML로 제공
Thursday, May 30, 13
분석 - JMX
/conf/server.xml
<Enable>
<IpAddress>
<RMIServerHostName>
에 적절한 값을 넣어줍니다.
Thursday, May 30, 13
분석 - JMX
JConsole StartUp을 연다
Remote Process를 누르고
service:jmx:rmi://localhost:8084/ (이어서)
jndi/rmi://localhost:8085/jmxrmi
Thursday, May 30, 13
분석 - JMX
Heap Memory Usage
Classes
Threads
CPU Usage
Thursday, May 30, 13
분석 - JMX
MBeans
Connections 세세한 정보 열람 가능
Thursday, May 30, 13
Getting Started
Thursday, May 30, 13
Getting Started - 단일 서버 세팅 - Live 기준
conf/[App-Directory]/Application.xml
StreamType>live
LiveStreamPacketizers>위에거 다 입력;
HTTPStreamers>cupertinostreaming,smoothstreaming,sanjosestreaming
RTP>Authentication>PlayMethod> none
Thursday, May 30, 13
Getting Started - 단일 서버 세팅 - Live 기준
****.stream 설정
[IP-Address]:8086/streammanager
- MediaCaster Type > RTP
Stream Name > ****.stream
Thursday, May 30, 13
Getting Started - 단일 서버 세팅 - Live 기준
Flash / Android / iOS
rtmp://[IP-Address]:1935/live/mpegts.stream
rtsp://[IP-Address]:1935/live/mpegts.stream
http://[IP-Address]:1935/live/mpegts.stream/playlist.m3u8
Thursday, May 30, 13
Getting Started - 분산 서버 세팅 - Live 기준 - Origin
conf/[App-Directory]/Application.xml
StreamType>liverepeater-origin
LiveStreamPacketizers> 아까 것 입력;
Thursday, May 30, 13
Getting Started - 분산 서버 세팅 - Live 기준 - Origin
****.stream 설정
[IP-Address]:8086/streammanager
- MediaCaster Type > RTP
Stream Name > ****.stream
Thursday, May 30, 13
Getting Started - 분산 서버 세팅 - Live 기준 - Edge
conf/[App-Directory]/Application.xml
StreamType>liverepeater-edge
LiveStreamPacketizers> 아까 것 입력;
Repeater>OriginURL>wowz://[origin-ip-address]:1935/[appname]
Thursday, May 30, 13
Getting Started - 분산 서버 세팅 - Live 기준 - Origin
****.stream 설정
[IP-Address]:8086/streammanager
- MediaCaster Type > liverepeater
Stream Name > ****.stream
Thursday, May 30, 13
Getting Started - 분산 서버 세팅 - Live 기준 - Edge
conf/[App-Directory]/Application.xml
StreamType>liverepeater-edge
LiveStreamPacketizers> 아까 것 입력;
Repeater>OriginURL>wowz://[origin-ip-address]:1935/[appname]
Thursday, May 30, 13
테스트
Thursday, May 30, 13
테스팅 단일 서버 테스트
Bitrate : 800 kb/s
H.264
AAC
Bitrate : 128 kb/s
SampleRate 44100
RTMPDump로 9개의 콘솔을 띄워서 시험
Thursday, May 30, 13
테스팅 단일 서버 테스트
Thursday, May 30, 13
테스팅 단일 서버 테스트
동영상이 자주 끊긴다.
Thursday, May 30, 13
테스팅 단일 서버 테스트
Bitrate : 800 kb/s
H.264
AAC
Bitrate : 128 kb/s
SampleRate 44100
RTMPDump로 각각 9개의 콘솔을 띄워서 시험
Thursday, May 30, 13
테스팅 분산 서버 테스트
Thursday, May 30, 13
테스팅 분산 서버 테스트
동영상이 안 끊긴다.
Thursday, May 30, 13
테스트 - 공식 테스트 지표
Hardware:
- CPU: Single Dual Core Xeon 5160, 4MB Cache, 3.00 GHz, 1333MHz FSB
- Memory: 2GB
- Disk IO (streaming disks): 2X 36GB, SAS, 15K RPM Hard Drives, RAID 0 (striping)
- Disk IO (OS disk): 1X 250GB, SATA, 7K RPM Hard Drive
- Network: Dual 1Gb controller
 
Software:
- OS: Fedora Core 6
- JRE: Sun Java6-Update1
 
Thursday, May 30, 13
테스트 - 공식 테스트 지표
Video On Demand Test 1 (600 connections, 400 files):
- Connections: 700
- Files: 400 (random selection of files)
- Video bitrate: 400kbs
- Audio bitrate: 96kbs
- Overall bitrate per file: ~512kbs (with overhead)
- Results: 368Mbs (no connections starved for data)
- Memory Usage: 361MB
- RTMP: CPU: 14.5%
- RTMPE: CPU: 22.6%
Video On Demand Test 2 (1800 connections, 1 file):
- Connections: 1800
- Files: 1
- Video bitrate: 400kbs
- Audio bitrate: 96kbs
- Overall bitrate per file: ~512kbs (with overhead)
- Results: 900Mbs (no connections starved for data)
- Memory Usage: 543MB
- RTMP: CPU: 35%
Thursday, May 30, 13
테스트 - 공식 테스트 지표
Live Streaming Test 1 (2000 connections, 512kbps On2 Flix Live stream):
- Connections: 2000
- Live Video: ~512kbps On2 Flix Live stream
- Results: 840Mbs (no connections starved for data)
- Memory Usage: 267MB
- RTMP: CPU: 21%
Thursday, May 30, 13
Part2 끝
Thursday, May 30, 13
Part2 끝
QnA
Thursday, May 30, 13
출처
소개
http://en.wikipedia.org/wiki/Wowza_Media_Server
비교
http://askmeflash.com/article/10/comparison-wowza-vs-fms-vs-red5
활용방안 사내방송
http://blog.naver.com/PostView.nhn?blogId=pacomeri_&logNo=130090435802
Wowza UserGuide
http://www.wowza.com/downloads/WowzaIDE-2-0-0/WowzaIDE_UsersGuide.pdf
App 만들기
http://www.wowza.com/forums/content.php?217#appConfig
Thursday, May 30, 13
출처
.stream file
http://www.wowza.com/forums/content.php?478-How-to-specify-per-stream-settings-in-
stream-files
Repeater!! 필수!!
http://www.wowza.com/forums/list.php?category/16-Live-Stream-Repeater
자작 VeryVerySimpleHTTPWebServer
https://gist.github.com/Hann/0ad5a26f4e56e4d70a2a
자작 VeryVerySimple RTMPDump Code
https://gist.github.com/Hann/6e6fd024d03dfe0791f3
HTTP로 사용해야하는 이유
http://helloworld.naver.com/helloworld/7122
Thursday, May 30, 13

Contenu connexe

Tendances

Passive Fingerprinting of HTTP/2 Clients by Ory Segal
Passive Fingerprinting of HTTP/2 Clients by Ory SegalPassive Fingerprinting of HTTP/2 Clients by Ory Segal
Passive Fingerprinting of HTTP/2 Clients by Ory SegalCODE BLUE
 
ETHCON 2020 - DeFi 스마트 컨트랙트의 취약점 분석 및 적용, 그리고 개선 방법
ETHCON 2020 - DeFi 스마트 컨트랙트의 취약점 분석 및 적용, 그리고 개선 방법ETHCON 2020 - DeFi 스마트 컨트랙트의 취약점 분석 및 적용, 그리고 개선 방법
ETHCON 2020 - DeFi 스마트 컨트랙트의 취약점 분석 및 적용, 그리고 개선 방법Benjamin Oh
 
Revisiting CephFS MDS and mClock QoS Scheduler
Revisiting CephFS MDS and mClock QoS SchedulerRevisiting CephFS MDS and mClock QoS Scheduler
Revisiting CephFS MDS and mClock QoS SchedulerYongseok Oh
 
Sharing is Caring: Toward Creating Self-tuning Multi-tenant Kafka (Anna Povzn...
Sharing is Caring: Toward Creating Self-tuning Multi-tenant Kafka (Anna Povzn...Sharing is Caring: Toward Creating Self-tuning Multi-tenant Kafka (Anna Povzn...
Sharing is Caring: Toward Creating Self-tuning Multi-tenant Kafka (Anna Povzn...HostedbyConfluent
 
클라우드 환경에서 알아야할 성능 이야기
클라우드 환경에서 알아야할 성능 이야기클라우드 환경에서 알아야할 성능 이야기
클라우드 환경에서 알아야할 성능 이야기YoungSu Son
 
Kubernetes dealing with storage and persistence
Kubernetes  dealing with storage and persistenceKubernetes  dealing with storage and persistence
Kubernetes dealing with storage and persistenceJanakiram MSV
 
Ceph Block Devices: A Deep Dive
Ceph Block Devices:  A Deep DiveCeph Block Devices:  A Deep Dive
Ceph Block Devices: A Deep DiveRed_Hat_Storage
 
Introduction to OpenStack Cinder
Introduction to OpenStack CinderIntroduction to OpenStack Cinder
Introduction to OpenStack CinderSean McGinnis
 
Secret Management with Hashicorp’s Vault
Secret Management with Hashicorp’s VaultSecret Management with Hashicorp’s Vault
Secret Management with Hashicorp’s VaultAWS Germany
 
Workflow Engines & Event Streaming Brokers - Can they work together? [Current...
Workflow Engines & Event Streaming Brokers - Can they work together? [Current...Workflow Engines & Event Streaming Brokers - Can they work together? [Current...
Workflow Engines & Event Streaming Brokers - Can they work together? [Current...Natan Silnitsky
 
Secret Management with Hashicorp Vault and Consul on Kubernetes
Secret Management with Hashicorp Vault and Consul on KubernetesSecret Management with Hashicorp Vault and Consul on Kubernetes
Secret Management with Hashicorp Vault and Consul on KubernetesAn Nguyen
 
Transparent Data Encryption in PostgreSQL and Integration with Key Management...
Transparent Data Encryption in PostgreSQL and Integration with Key Management...Transparent Data Encryption in PostgreSQL and Integration with Key Management...
Transparent Data Encryption in PostgreSQL and Integration with Key Management...Masahiko Sawada
 
성공적인 하이브리드 클라우드를 위한 레드햇의 전략
성공적인 하이브리드 클라우드를 위한 레드햇의 전략성공적인 하이브리드 클라우드를 위한 레드햇의 전략
성공적인 하이브리드 클라우드를 위한 레드햇의 전략rockplace
 
KSQL: Streaming SQL for Kafka
KSQL: Streaming SQL for KafkaKSQL: Streaming SQL for Kafka
KSQL: Streaming SQL for Kafkaconfluent
 
Speed Up Your Kubernetes Upgrades For Your Kafka Clusters
Speed Up Your Kubernetes Upgrades For Your Kafka ClustersSpeed Up Your Kubernetes Upgrades For Your Kafka Clusters
Speed Up Your Kubernetes Upgrades For Your Kafka ClustersVanessa Vuibert
 
kubernetes를 부탁해~ Prometheus 기반 Monitoring 구축&활용기
kubernetes를 부탁해~ Prometheus 기반 Monitoring 구축&활용기kubernetes를 부탁해~ Prometheus 기반 Monitoring 구축&활용기
kubernetes를 부탁해~ Prometheus 기반 Monitoring 구축&활용기Jinsu Moon
 
Docker Security Overview
Docker Security OverviewDocker Security Overview
Docker Security OverviewSreenivas Makam
 
User authentication and authorizarion in Kubernetes
User authentication and authorizarion in KubernetesUser authentication and authorizarion in Kubernetes
User authentication and authorizarion in KubernetesNeependra Khare
 
The Observability Pipeline
The Observability PipelineThe Observability Pipeline
The Observability PipelineTyler Treat
 

Tendances (20)

Passive Fingerprinting of HTTP/2 Clients by Ory Segal
Passive Fingerprinting of HTTP/2 Clients by Ory SegalPassive Fingerprinting of HTTP/2 Clients by Ory Segal
Passive Fingerprinting of HTTP/2 Clients by Ory Segal
 
ETHCON 2020 - DeFi 스마트 컨트랙트의 취약점 분석 및 적용, 그리고 개선 방법
ETHCON 2020 - DeFi 스마트 컨트랙트의 취약점 분석 및 적용, 그리고 개선 방법ETHCON 2020 - DeFi 스마트 컨트랙트의 취약점 분석 및 적용, 그리고 개선 방법
ETHCON 2020 - DeFi 스마트 컨트랙트의 취약점 분석 및 적용, 그리고 개선 방법
 
Revisiting CephFS MDS and mClock QoS Scheduler
Revisiting CephFS MDS and mClock QoS SchedulerRevisiting CephFS MDS and mClock QoS Scheduler
Revisiting CephFS MDS and mClock QoS Scheduler
 
Sharing is Caring: Toward Creating Self-tuning Multi-tenant Kafka (Anna Povzn...
Sharing is Caring: Toward Creating Self-tuning Multi-tenant Kafka (Anna Povzn...Sharing is Caring: Toward Creating Self-tuning Multi-tenant Kafka (Anna Povzn...
Sharing is Caring: Toward Creating Self-tuning Multi-tenant Kafka (Anna Povzn...
 
ConcourseCI love Minio
ConcourseCI love MinioConcourseCI love Minio
ConcourseCI love Minio
 
클라우드 환경에서 알아야할 성능 이야기
클라우드 환경에서 알아야할 성능 이야기클라우드 환경에서 알아야할 성능 이야기
클라우드 환경에서 알아야할 성능 이야기
 
Kubernetes dealing with storage and persistence
Kubernetes  dealing with storage and persistenceKubernetes  dealing with storage and persistence
Kubernetes dealing with storage and persistence
 
Ceph Block Devices: A Deep Dive
Ceph Block Devices:  A Deep DiveCeph Block Devices:  A Deep Dive
Ceph Block Devices: A Deep Dive
 
Introduction to OpenStack Cinder
Introduction to OpenStack CinderIntroduction to OpenStack Cinder
Introduction to OpenStack Cinder
 
Secret Management with Hashicorp’s Vault
Secret Management with Hashicorp’s VaultSecret Management with Hashicorp’s Vault
Secret Management with Hashicorp’s Vault
 
Workflow Engines & Event Streaming Brokers - Can they work together? [Current...
Workflow Engines & Event Streaming Brokers - Can they work together? [Current...Workflow Engines & Event Streaming Brokers - Can they work together? [Current...
Workflow Engines & Event Streaming Brokers - Can they work together? [Current...
 
Secret Management with Hashicorp Vault and Consul on Kubernetes
Secret Management with Hashicorp Vault and Consul on KubernetesSecret Management with Hashicorp Vault and Consul on Kubernetes
Secret Management with Hashicorp Vault and Consul on Kubernetes
 
Transparent Data Encryption in PostgreSQL and Integration with Key Management...
Transparent Data Encryption in PostgreSQL and Integration with Key Management...Transparent Data Encryption in PostgreSQL and Integration with Key Management...
Transparent Data Encryption in PostgreSQL and Integration with Key Management...
 
성공적인 하이브리드 클라우드를 위한 레드햇의 전략
성공적인 하이브리드 클라우드를 위한 레드햇의 전략성공적인 하이브리드 클라우드를 위한 레드햇의 전략
성공적인 하이브리드 클라우드를 위한 레드햇의 전략
 
KSQL: Streaming SQL for Kafka
KSQL: Streaming SQL for KafkaKSQL: Streaming SQL for Kafka
KSQL: Streaming SQL for Kafka
 
Speed Up Your Kubernetes Upgrades For Your Kafka Clusters
Speed Up Your Kubernetes Upgrades For Your Kafka ClustersSpeed Up Your Kubernetes Upgrades For Your Kafka Clusters
Speed Up Your Kubernetes Upgrades For Your Kafka Clusters
 
kubernetes를 부탁해~ Prometheus 기반 Monitoring 구축&활용기
kubernetes를 부탁해~ Prometheus 기반 Monitoring 구축&활용기kubernetes를 부탁해~ Prometheus 기반 Monitoring 구축&활용기
kubernetes를 부탁해~ Prometheus 기반 Monitoring 구축&활용기
 
Docker Security Overview
Docker Security OverviewDocker Security Overview
Docker Security Overview
 
User authentication and authorizarion in Kubernetes
User authentication and authorizarion in KubernetesUser authentication and authorizarion in Kubernetes
User authentication and authorizarion in Kubernetes
 
The Observability Pipeline
The Observability PipelineThe Observability Pipeline
The Observability Pipeline
 

Similaire à Wowza 탐험기

룩앳미(포트폴리오) - 김대환
룩앳미(포트폴리오) - 김대환룩앳미(포트폴리오) - 김대환
룩앳미(포트폴리오) - 김대환대환 김
 
Deploying flask with nginx & uWSGI
Deploying flask with nginx & uWSGIDeploying flask with nginx & uWSGI
Deploying flask with nginx & uWSGI정주 김
 
Udamp3 django apache-my_sql_python3_ubuntu14.04-v11
Udamp3 django apache-my_sql_python3_ubuntu14.04-v11Udamp3 django apache-my_sql_python3_ubuntu14.04-v11
Udamp3 django apache-my_sql_python3_ubuntu14.04-v11Dongil Yeom
 
Paas 발표 ksug_20131013
Paas 발표 ksug_20131013Paas 발표 ksug_20131013
Paas 발표 ksug_20131013Byung Hyun Ahn
 
Gpdb best practices v a01 20150313
Gpdb best practices v a01 20150313Gpdb best practices v a01 20150313
Gpdb best practices v a01 20150313Sanghee Lee
 
스타트업 사례로 본 로그 데이터 분석 : Tajo on AWS
스타트업 사례로 본 로그 데이터 분석 : Tajo on AWS스타트업 사례로 본 로그 데이터 분석 : Tajo on AWS
스타트업 사례로 본 로그 데이터 분석 : Tajo on AWSMatthew (정재화)
 
Zinst 패키지 기반의-리눅스_중앙관리시스템_20140415
Zinst 패키지 기반의-리눅스_중앙관리시스템_20140415Zinst 패키지 기반의-리눅스_중앙관리시스템_20140415
Zinst 패키지 기반의-리눅스_중앙관리시스템_20140415sprdd
 
Internship backend
Internship backendInternship backend
Internship backendYein Sim
 
[오픈소스컨설팅] Atlassian webinar 기본 트러블슈팅(1 of 2)
[오픈소스컨설팅] Atlassian webinar 기본 트러블슈팅(1 of 2)[오픈소스컨설팅] Atlassian webinar 기본 트러블슈팅(1 of 2)
[오픈소스컨설팅] Atlassian webinar 기본 트러블슈팅(1 of 2)Osc Osc
 
스타트업사례로 본 로그 데이터분석 : Tajo on AWS
스타트업사례로 본 로그 데이터분석 : Tajo on AWS스타트업사례로 본 로그 데이터분석 : Tajo on AWS
스타트업사례로 본 로그 데이터분석 : Tajo on AWSGruter
 
『빠르게 훑어보는 구글 클라우드 플랫폼』 - 맛보기
『빠르게 훑어보는 구글 클라우드 플랫폼』 - 맛보기『빠르게 훑어보는 구글 클라우드 플랫폼』 - 맛보기
『빠르게 훑어보는 구글 클라우드 플랫폼』 - 맛보기복연 이
 
파일전송 및 공유 전문 솔루션 - CrushFTP (SFTP 서버) (old version)
파일전송 및 공유 전문 솔루션 - CrushFTP (SFTP 서버) (old version)파일전송 및 공유 전문 솔루션 - CrushFTP (SFTP 서버) (old version)
파일전송 및 공유 전문 솔루션 - CrushFTP (SFTP 서버) (old version)옥시즌
 
Db프로그래밍 환경 설정(131062 장택순)
Db프로그래밍 환경 설정(131062 장택순)Db프로그래밍 환경 설정(131062 장택순)
Db프로그래밍 환경 설정(131062 장택순)TaekSoon Jang
 
[커빙 아키텍쳐] 커빙은 어떻게 소셜 컨텐츠를 모아올까요?
[커빙 아키텍쳐] 커빙은 어떻게 소셜 컨텐츠를 모아올까요?[커빙 아키텍쳐] 커빙은 어떻게 소셜 컨텐츠를 모아올까요?
[커빙 아키텍쳐] 커빙은 어떻게 소셜 컨텐츠를 모아올까요?Sang-ho Choi
 
[커빙 아키텍쳐] 커빙은 어떻게 소셜 컨텐츠를 모아올까요?
[커빙 아키텍쳐] 커빙은 어떻게 소셜 컨텐츠를 모아올까요?[커빙 아키텍쳐] 커빙은 어떻게 소셜 컨텐츠를 모아올까요?
[커빙 아키텍쳐] 커빙은 어떻게 소셜 컨텐츠를 모아올까요?주식회사 내일비
 
[오픈소스컨설팅]Nginx jboss 연동가이드__v1
[오픈소스컨설팅]Nginx jboss 연동가이드__v1[오픈소스컨설팅]Nginx jboss 연동가이드__v1
[오픈소스컨설팅]Nginx jboss 연동가이드__v1Ji-Woong Choi
 
Scouter와 influx db – grafana 연동 가이드
Scouter와 influx db – grafana 연동 가이드Scouter와 influx db – grafana 연동 가이드
Scouter와 influx db – grafana 연동 가이드Ji-Woong Choi
 
[231]나는서버를썰터이니너는개발만하여라 양지욱
[231]나는서버를썰터이니너는개발만하여라 양지욱[231]나는서버를썰터이니너는개발만하여라 양지욱
[231]나는서버를썰터이니너는개발만하여라 양지욱NAVER D2
 
2023 GDG Sondo DevFest - Flutter/ Flavor, PlatformChannel, Environment variab...
2023 GDG Sondo DevFest - Flutter/ Flavor, PlatformChannel, Environment variab...2023 GDG Sondo DevFest - Flutter/ Flavor, PlatformChannel, Environment variab...
2023 GDG Sondo DevFest - Flutter/ Flavor, PlatformChannel, Environment variab...MaRoKim4
 

Similaire à Wowza 탐험기 (20)

룩앳미(포트폴리오) - 김대환
룩앳미(포트폴리오) - 김대환룩앳미(포트폴리오) - 김대환
룩앳미(포트폴리오) - 김대환
 
Deploying flask with nginx & uWSGI
Deploying flask with nginx & uWSGIDeploying flask with nginx & uWSGI
Deploying flask with nginx & uWSGI
 
Udamp3 django apache-my_sql_python3_ubuntu14.04-v11
Udamp3 django apache-my_sql_python3_ubuntu14.04-v11Udamp3 django apache-my_sql_python3_ubuntu14.04-v11
Udamp3 django apache-my_sql_python3_ubuntu14.04-v11
 
Paas 발표 ksug_20131013
Paas 발표 ksug_20131013Paas 발표 ksug_20131013
Paas 발표 ksug_20131013
 
Gpdb best practices v a01 20150313
Gpdb best practices v a01 20150313Gpdb best practices v a01 20150313
Gpdb best practices v a01 20150313
 
스타트업 사례로 본 로그 데이터 분석 : Tajo on AWS
스타트업 사례로 본 로그 데이터 분석 : Tajo on AWS스타트업 사례로 본 로그 데이터 분석 : Tajo on AWS
스타트업 사례로 본 로그 데이터 분석 : Tajo on AWS
 
Zinst 패키지 기반의-리눅스_중앙관리시스템_20140415
Zinst 패키지 기반의-리눅스_중앙관리시스템_20140415Zinst 패키지 기반의-리눅스_중앙관리시스템_20140415
Zinst 패키지 기반의-리눅스_중앙관리시스템_20140415
 
Internship backend
Internship backendInternship backend
Internship backend
 
[오픈소스컨설팅] Atlassian webinar 기본 트러블슈팅(1 of 2)
[오픈소스컨설팅] Atlassian webinar 기본 트러블슈팅(1 of 2)[오픈소스컨설팅] Atlassian webinar 기본 트러블슈팅(1 of 2)
[오픈소스컨설팅] Atlassian webinar 기본 트러블슈팅(1 of 2)
 
스타트업사례로 본 로그 데이터분석 : Tajo on AWS
스타트업사례로 본 로그 데이터분석 : Tajo on AWS스타트업사례로 본 로그 데이터분석 : Tajo on AWS
스타트업사례로 본 로그 데이터분석 : Tajo on AWS
 
『빠르게 훑어보는 구글 클라우드 플랫폼』 - 맛보기
『빠르게 훑어보는 구글 클라우드 플랫폼』 - 맛보기『빠르게 훑어보는 구글 클라우드 플랫폼』 - 맛보기
『빠르게 훑어보는 구글 클라우드 플랫폼』 - 맛보기
 
파일전송 및 공유 전문 솔루션 - CrushFTP (SFTP 서버) (old version)
파일전송 및 공유 전문 솔루션 - CrushFTP (SFTP 서버) (old version)파일전송 및 공유 전문 솔루션 - CrushFTP (SFTP 서버) (old version)
파일전송 및 공유 전문 솔루션 - CrushFTP (SFTP 서버) (old version)
 
Db프로그래밍 환경 설정(131062 장택순)
Db프로그래밍 환경 설정(131062 장택순)Db프로그래밍 환경 설정(131062 장택순)
Db프로그래밍 환경 설정(131062 장택순)
 
[커빙 아키텍쳐] 커빙은 어떻게 소셜 컨텐츠를 모아올까요?
[커빙 아키텍쳐] 커빙은 어떻게 소셜 컨텐츠를 모아올까요?[커빙 아키텍쳐] 커빙은 어떻게 소셜 컨텐츠를 모아올까요?
[커빙 아키텍쳐] 커빙은 어떻게 소셜 컨텐츠를 모아올까요?
 
[커빙 아키텍쳐] 커빙은 어떻게 소셜 컨텐츠를 모아올까요?
[커빙 아키텍쳐] 커빙은 어떻게 소셜 컨텐츠를 모아올까요?[커빙 아키텍쳐] 커빙은 어떻게 소셜 컨텐츠를 모아올까요?
[커빙 아키텍쳐] 커빙은 어떻게 소셜 컨텐츠를 모아올까요?
 
[오픈소스컨설팅]Nginx jboss 연동가이드__v1
[오픈소스컨설팅]Nginx jboss 연동가이드__v1[오픈소스컨설팅]Nginx jboss 연동가이드__v1
[오픈소스컨설팅]Nginx jboss 연동가이드__v1
 
Scouter와 influx db – grafana 연동 가이드
Scouter와 influx db – grafana 연동 가이드Scouter와 influx db – grafana 연동 가이드
Scouter와 influx db – grafana 연동 가이드
 
Lam pstack
Lam pstackLam pstack
Lam pstack
 
[231]나는서버를썰터이니너는개발만하여라 양지욱
[231]나는서버를썰터이니너는개발만하여라 양지욱[231]나는서버를썰터이니너는개발만하여라 양지욱
[231]나는서버를썰터이니너는개발만하여라 양지욱
 
2023 GDG Sondo DevFest - Flutter/ Flavor, PlatformChannel, Environment variab...
2023 GDG Sondo DevFest - Flutter/ Flavor, PlatformChannel, Environment variab...2023 GDG Sondo DevFest - Flutter/ Flavor, PlatformChannel, Environment variab...
2023 GDG Sondo DevFest - Flutter/ Flavor, PlatformChannel, Environment variab...
 

Dernier

Grid Layout (Kitworks Team Study 장현정 발표자료)
Grid Layout (Kitworks Team Study 장현정 발표자료)Grid Layout (Kitworks Team Study 장현정 발표자료)
Grid Layout (Kitworks Team Study 장현정 발표자료)Wonjun Hwang
 
Continual Active Learning for Efficient Adaptation of Machine LearningModels ...
Continual Active Learning for Efficient Adaptation of Machine LearningModels ...Continual Active Learning for Efficient Adaptation of Machine LearningModels ...
Continual Active Learning for Efficient Adaptation of Machine LearningModels ...Kim Daeun
 
MOODv2 : Masked Image Modeling for Out-of-Distribution Detection
MOODv2 : Masked Image Modeling for Out-of-Distribution DetectionMOODv2 : Masked Image Modeling for Out-of-Distribution Detection
MOODv2 : Masked Image Modeling for Out-of-Distribution DetectionKim Daeun
 
도심 하늘에서 시속 200km로 비행할 수 있는 미래 항공 모빌리티 'S-A2'
도심 하늘에서 시속 200km로 비행할 수 있는 미래 항공 모빌리티 'S-A2'도심 하늘에서 시속 200km로 비행할 수 있는 미래 항공 모빌리티 'S-A2'
도심 하늘에서 시속 200km로 비행할 수 있는 미래 항공 모빌리티 'S-A2'Hyundai Motor Group
 
A future that integrates LLMs and LAMs (Symposium)
A future that integrates LLMs and LAMs (Symposium)A future that integrates LLMs and LAMs (Symposium)
A future that integrates LLMs and LAMs (Symposium)Tae Young Lee
 
[Terra] Terra Money: Stability and Adoption
[Terra] Terra Money: Stability and Adoption[Terra] Terra Money: Stability and Adoption
[Terra] Terra Money: Stability and AdoptionSeung-chan Baeg
 
캐드앤그래픽스 2024년 5월호 목차
캐드앤그래픽스 2024년 5월호 목차캐드앤그래픽스 2024년 5월호 목차
캐드앤그래픽스 2024년 5월호 목차캐드앤그래픽스
 

Dernier (7)

Grid Layout (Kitworks Team Study 장현정 발표자료)
Grid Layout (Kitworks Team Study 장현정 발표자료)Grid Layout (Kitworks Team Study 장현정 발표자료)
Grid Layout (Kitworks Team Study 장현정 발표자료)
 
Continual Active Learning for Efficient Adaptation of Machine LearningModels ...
Continual Active Learning for Efficient Adaptation of Machine LearningModels ...Continual Active Learning for Efficient Adaptation of Machine LearningModels ...
Continual Active Learning for Efficient Adaptation of Machine LearningModels ...
 
MOODv2 : Masked Image Modeling for Out-of-Distribution Detection
MOODv2 : Masked Image Modeling for Out-of-Distribution DetectionMOODv2 : Masked Image Modeling for Out-of-Distribution Detection
MOODv2 : Masked Image Modeling for Out-of-Distribution Detection
 
도심 하늘에서 시속 200km로 비행할 수 있는 미래 항공 모빌리티 'S-A2'
도심 하늘에서 시속 200km로 비행할 수 있는 미래 항공 모빌리티 'S-A2'도심 하늘에서 시속 200km로 비행할 수 있는 미래 항공 모빌리티 'S-A2'
도심 하늘에서 시속 200km로 비행할 수 있는 미래 항공 모빌리티 'S-A2'
 
A future that integrates LLMs and LAMs (Symposium)
A future that integrates LLMs and LAMs (Symposium)A future that integrates LLMs and LAMs (Symposium)
A future that integrates LLMs and LAMs (Symposium)
 
[Terra] Terra Money: Stability and Adoption
[Terra] Terra Money: Stability and Adoption[Terra] Terra Money: Stability and Adoption
[Terra] Terra Money: Stability and Adoption
 
캐드앤그래픽스 2024년 5월호 목차
캐드앤그래픽스 2024년 5월호 목차캐드앤그래픽스 2024년 5월호 목차
캐드앤그래픽스 2024년 5월호 목차
 

Wowza 탐험기

  • 2. Contents part1 1.발표자 소개 2.소개 1.장점 2.단점 3.비용 4.AddOn 3.구성 1.기본 2.확장 3.확장성 - 가상 시나리오 4.확장성 - 교훈 5.확장성 - Cloud Server 4.비교 5.맛 보기 Thursday, May 30, 13
  • 3. Contents part2 1.분석 1.폴더 구조 2.App 만들기 3.Conf Directory 4.[wowza ip]:8086 5.*.stream 6.JMX 2.Getting Started 2.단일 서버 세팅 3.분산 서버 세팅 3.테스트 Thursday, May 30, 13
  • 4. 발표자 소개 이름 : 한진수 나이 : 23 (1991) 주말에 하는 일 : 카페가기, 자전거타기 특징 : 안산 토박이, 회사 막내 Thursday, May 30, 13
  • 6. 소개 - 이름 Wowza Media System으로 개발 된 통합된 Server Software이다. Live Streaming이나 On-Demand Video, Audio를 이용하여, 공인 & 내부 IP를 통하여 Laptop, Desktop, Mobile devices 등에서 볼 수 있다. Java로 개발하였기에 Linux, Mac OS X, Unix, Windows에서 이용 가능하다. 다양한 프로토콜을 지원하여서 여러 기종에서 시청이 가능하다. Thursday, May 30, 13
  • 7. 소개 - 장점 타 제품에 비해 노력이 들어갈 부분이 적다 JMX(Java Management eXtension)을 통한 시각적인 PC상태 관리가 가능하다. Web상으로도 간략한 정보가 제공되어 현재 커넥션 수 등을 체크 가능하다 다양한 AddOn(부가기능)이 제공된다 타 제품에 비해 지원되는 기종 & 프로토콜이 많고, 성능이 우수하다 쉬운 확장(Scale Up)이 가능하다 Thursday, May 30, 13
  • 8. 소개 - 단점 가격이 비싸다 다양한 AddOn(부가기능)도 유료다. Thursday, May 30, 13
  • 9. 소개 - 비용 영구 라이센스 995달러 한국 돈 약 110만원 AddOn구매시 추가 금액 한 달 라이센스 55달러 한국 돈 약 6.5만원 AddOn도 한 달 단위로 요금 지불. Thursday, May 30, 13
  • 11. 소개 - AddOn 유동적인 분산처리 Thursday, May 30, 13
  • 12. 소개 - AddOn 유동적인 분산처리 서버 Transcoding Thursday, May 30, 13
  • 13. 소개 - AddOn 유동적인 분산처리 서버 Transcoding Contents 미리 캐싱 Thursday, May 30, 13
  • 14. 소개 - AddOn 유동적인 분산처리 서버 Transcoding DRM 설정 Contents 미리 캐싱 Thursday, May 30, 13
  • 17. 구성 - 기본 Wowza Server Thursday, May 30, 13
  • 18. 구성 - 기본 Wowza Server Thursday, May 30, 13
  • 19. 구성 - 기본 Wowza Server Thursday, May 30, 13
  • 20. 구성 - 기본 Wowza Server Thursday, May 30, 13
  • 21. 구성 - 기본 Wowza Server Thursday, May 30, 13
  • 22. 구성 - 확장 Wowza Server Thursday, May 30, 13
  • 24. 특징 - 확장성 - 가상시나리오 Wowza Server Thursday, May 30, 13
  • 25. 특징 - 확장성 - Cloud의 교훈 Thursday, May 30, 13
  • 26. 특징 - 확장성 - Cloud의 교훈 서버를 늘려야 한다. Thursday, May 30, 13
  • 27. 특징 - 확장성 - Cloud의 교훈 서버를 늘려야 한다. 근데 서버는 비쌉니다 Thursday, May 30, 13
  • 28. 특징 - 확장성 - Cloud의 교훈 서버를 늘려야 한다. 근데 서버는 비쌉니다 서버를 사면 둘 곳이 필요합니다. Thursday, May 30, 13
  • 29. 특징 - 확장성 - Cloud의 교훈 서버를 늘려야 한다. 근데 서버는 비쌉니다 서버를 사면 둘 곳이 필요합니다. 아주 잠깐 사람들이 몰린거면 어떻게 합니까? Thursday, May 30, 13
  • 30. 특징 - 확장성 - Cloud의 교훈 서버를 늘려야 한다. 근데 서버는 비쌉니다 서버를 사면 둘 곳이 필요합니다. 아주 잠깐 사람들이 몰린거면 어떻게 합니까? 잠깐만 치고 빠지는 그런 서버 없나요? Thursday, May 30, 13
  • 31. 특징 - 확장성 - Cloud Server Thursday, May 30, 13
  • 32. 특징 - 확장성 - Cloud Server Thursday, May 30, 13
  • 33. 특징 - 확장성 - Cloud Server ... Thursday, May 30, 13
  • 34. 특징 - 확장성 - Cloud Server Wowza Server Thursday, May 30, 13
  • 35. 특징 - 확장성 - Cloud Server Wowza Server Thursday, May 30, 13
  • 36. 특징 - 확장성 - Cloud Server Wowza Server Thursday, May 30, 13
  • 37. 특징 - 확장성 - Cloud Server Wowza Server Thursday, May 30, 13
  • 38. 특징 - 확장성 - Cloud Server Wowza Server Thursday, May 30, 13
  • 39. 특징 - 확장성 - Cloud Server Wowza Server Thursday, May 30, 13
  • 40. 특징 - 확장성 - Cloud Server Wowza Server Thursday, May 30, 13
  • 41. 특징 - 확장성 - Cloud Server 특징 필요할 때 쓰고 해지할 수 있다. 쓴 만큼 내므로 저렴하다. 공간을 차지하지 않는다. Thursday, May 30, 13
  • 43. 비교 Wowza Red5 가격 $995 Free ( Open Source ) 지원 OS Windows, OS X, Linux Windows, Ubuntu(Linux), OS X 플랫폼 Flash (RTMP), iPhone ( HTTP Streaming), Silvelight, QuickTime (RTSP), IPTV(MPEG-TS) Flash (RTMP) 언어 Java Java Thursday, May 30, 13
  • 45. 활용방안 - 사내방송 & 학교 교육 방송 Thursday, May 30, 13
  • 46. 활용방안 - 미디어 컨텐츠 시스템 구축 Thursday, May 30, 13
  • 51. 분석 - 폴더구조 application 사용자가 만든 app들이 보관 되어있는 폴더 Thursday, May 30, 13
  • 52. 분석 - 폴더구조 application 사용자가 만든 app들이 보관 되어있는 폴더 conf app을 만들 때 같이 만들어야 하는 폴더 Thursday, May 30, 13
  • 54. 분석 - 폴더구조 documentation 문서들이 저장되어있다. 이 문서는 온라인에서도 다운로드 가능하다. Thursday, May 30, 13
  • 55. 분석 - 폴더구조 documentation 문서들이 저장되어있다. 이 문서는 온라인에서도 다운로드 가능하다. examples 다양한 예제들이 있다. 예제 플레이어로 자주 쓰곤한다. Thursday, May 30, 13
  • 56. 분석 - 폴더구조 documentation 문서들이 저장되어있다. 이 문서는 온라인에서도 다운로드 가능하다. examples 다양한 예제들이 있다. 예제 플레이어로 자주 쓰곤한다. logs Access로그와 Error로그가 기록된다. 어떤 문제가 발생했을 때에는 여기부터 확인 한다. Thursday, May 30, 13
  • 57. 분석 - App 만들기 [install-directory]/application/ 만들고 싶은 App이름으로 디렉토리를 하나 만든다. 이름을 AppName이라고 생각합니다. [install-directory]/conf/Application.xml application.xml은 template이라고 봐도 좋다. 위치를 눈에 익힐 것. [install-directory]/conf/AppName/Application.xml conf 안에 AppName이라는 디렉토리를 만들고, 위에 쓴 Application.xml을 복사하여 디렉토리 안에 붙여넣는다. Thursday, May 30, 13
  • 58. 분석 - App 만들기 [install-directory]/application/ 만들고 싶은 App이름으로 디렉토리를 하나 만든다. 이름을 AppName이라고 생각합니다. [install-directory]/conf/Application.xml application.xml은 template이라고 봐도 좋다. 위치를 눈에 익힐 것. [install-directory]/conf/AppName/Application.xml conf 안에 AppName이라는 디렉토리를 만들고, 위에 쓴 Application.xml을 복사하여 디렉토리 안에 붙여넣는다. 끝 Thursday, May 30, 13
  • 59. 분석 - Conf Directory Thursday, May 30, 13
  • 60. 분석 - Conf Directory Directories App 만들 때, 만든 디렉토리들이다. 각각의 Application.xml을 갖고 있다. Thursday, May 30, 13
  • 61. 분석 - Conf Directory Directories App 만들 때, 만든 디렉토리들이다. 각각의 Application.xml을 갖고 있다. Application.xml App을 만들 때, 참고가 되는 xml 파일 Thursday, May 30, 13
  • 62. 분석 - Conf Directory Directories App 만들 때, 만든 디렉토리들이다. 각각의 Application.xml을 갖고 있다. Application.xml App을 만들 때, 참고가 되는 xml 파일 admin.password admin과 password를 입력하는 곳이다. 딱 히 권한이 없어서 자유롭게 지우고 삭제 가능 Thursday, May 30, 13
  • 63. 분석 - Conf Directory Directories App 만들 때, 만든 디렉토리들이다. 각각의 Application.xml을 갖고 있다. Application.xml App을 만들 때, 참고가 되는 xml 파일 admin.password admin과 password를 입력하는 곳이다. 딱 히 권한이 없어서 자유롭게 지우고 삭제 가능 그 외 등등.. 라이센스를 설정, 서버 설정, HTTPStreamer 설정 등등.. 각종 설정이 있다. Thursday, May 30, 13
  • 64. 분석 - Conf Directory - Application.xml Stream Types Stream>StreamType 에 존재 - default : H.264 / AAC - record : 비디오 레코딩 - live : 비디오 컨텐츠 재생 - live-lowlatency - live-record : live + record - shoutcast : MP3 or AAC - shoutcast-record : shout + record - liverepeater-origin : 스트림 전달 - liverepeater-edge - rtp-live : RTSP/RTP, TS restream - rtp-live-record : rtp-live + record Thursday, May 30, 13
  • 65. 분석 - *.stream file - JSON 사용 { uri : String streamTimeout : Integer reconnectionWaitTime : Integer } - uri 특정한 uri 를 지정합니다 ex) “udp://192.168.1.85” - streamTimeout 스트림이 연결되기 까지 기다립니다. 단위 ms ex) 5000 - reconnectionWaitTime 재연결을 시도하는 사이에 기다리는 초입니다. 단위 ms ex) 5000 Thursday, May 30, 13
  • 66. 분석 - *.stream file [install-directory]/content/ 이 곳에 위치해야 합니다. Thursday, May 30, 13
  • 67. 분석 - PORT 8086 [wowza ip]:8086 Thursday, May 30, 13
  • 68. 분석 - PORT 8086 [wowza ip]:8086 - /streammanager - /connectioninfo - /connectioncounts - /serverinfo server stream 구동 Server에 접속한 Client의 수 Connection 상태나 스트림 상세정보 등을 XML로 제공 서버 실행시간, 전체 커넥션 상태 등을 XML로 제공 Thursday, May 30, 13
  • 69. 분석 - PORT 8086 [wowza ip]:8086 - /streammanager - /connectioninfo - /connectioncounts - /serverinfo server stream 구동 Server에 접속한 Client의 수 Connection 상태나 스트림 상세정보 등을 XML로 제공 서버 실행시간, 전체 커넥션 상태 등을 XML로 제공 Thursday, May 30, 13
  • 70. 분석 - PORT 8086 [wowza ip]:8086 - /streammanager - /connectioninfo - /connectioncounts - /serverinfo server stream 구동 Server에 접속한 Client의 수 Connection 상태나 스트림 상세정보 등을 XML로 제공 서버 실행시간, 전체 커넥션 상태 등을 XML로 제공 Thursday, May 30, 13
  • 71. 분석 - PORT 8086 [wowza ip]:8086 - /streammanager - /connectioninfo - /connectioncounts - /serverinfo server stream 구동 Server에 접속한 Client의 수 Connection 상태나 스트림 상세정보 등을 XML로 제공 서버 실행시간, 전체 커넥션 상태 등을 XML로 제공 Thursday, May 30, 13
  • 72. 분석 - JMX /conf/server.xml <Enable> <IpAddress> <RMIServerHostName> 에 적절한 값을 넣어줍니다. Thursday, May 30, 13
  • 73. 분석 - JMX JConsole StartUp을 연다 Remote Process를 누르고 service:jmx:rmi://localhost:8084/ (이어서) jndi/rmi://localhost:8085/jmxrmi Thursday, May 30, 13
  • 74. 분석 - JMX Heap Memory Usage Classes Threads CPU Usage Thursday, May 30, 13
  • 75. 분석 - JMX MBeans Connections 세세한 정보 열람 가능 Thursday, May 30, 13
  • 77. Getting Started - 단일 서버 세팅 - Live 기준 conf/[App-Directory]/Application.xml StreamType>live LiveStreamPacketizers>위에거 다 입력; HTTPStreamers>cupertinostreaming,smoothstreaming,sanjosestreaming RTP>Authentication>PlayMethod> none Thursday, May 30, 13
  • 78. Getting Started - 단일 서버 세팅 - Live 기준 ****.stream 설정 [IP-Address]:8086/streammanager - MediaCaster Type > RTP Stream Name > ****.stream Thursday, May 30, 13
  • 79. Getting Started - 단일 서버 세팅 - Live 기준 Flash / Android / iOS rtmp://[IP-Address]:1935/live/mpegts.stream rtsp://[IP-Address]:1935/live/mpegts.stream http://[IP-Address]:1935/live/mpegts.stream/playlist.m3u8 Thursday, May 30, 13
  • 80. Getting Started - 분산 서버 세팅 - Live 기준 - Origin conf/[App-Directory]/Application.xml StreamType>liverepeater-origin LiveStreamPacketizers> 아까 것 입력; Thursday, May 30, 13
  • 81. Getting Started - 분산 서버 세팅 - Live 기준 - Origin ****.stream 설정 [IP-Address]:8086/streammanager - MediaCaster Type > RTP Stream Name > ****.stream Thursday, May 30, 13
  • 82. Getting Started - 분산 서버 세팅 - Live 기준 - Edge conf/[App-Directory]/Application.xml StreamType>liverepeater-edge LiveStreamPacketizers> 아까 것 입력; Repeater>OriginURL>wowz://[origin-ip-address]:1935/[appname] Thursday, May 30, 13
  • 83. Getting Started - 분산 서버 세팅 - Live 기준 - Origin ****.stream 설정 [IP-Address]:8086/streammanager - MediaCaster Type > liverepeater Stream Name > ****.stream Thursday, May 30, 13
  • 84. Getting Started - 분산 서버 세팅 - Live 기준 - Edge conf/[App-Directory]/Application.xml StreamType>liverepeater-edge LiveStreamPacketizers> 아까 것 입력; Repeater>OriginURL>wowz://[origin-ip-address]:1935/[appname] Thursday, May 30, 13
  • 86. 테스팅 단일 서버 테스트 Bitrate : 800 kb/s H.264 AAC Bitrate : 128 kb/s SampleRate 44100 RTMPDump로 9개의 콘솔을 띄워서 시험 Thursday, May 30, 13
  • 87. 테스팅 단일 서버 테스트 Thursday, May 30, 13
  • 88. 테스팅 단일 서버 테스트 동영상이 자주 끊긴다. Thursday, May 30, 13
  • 89. 테스팅 단일 서버 테스트 Bitrate : 800 kb/s H.264 AAC Bitrate : 128 kb/s SampleRate 44100 RTMPDump로 각각 9개의 콘솔을 띄워서 시험 Thursday, May 30, 13
  • 90. 테스팅 분산 서버 테스트 Thursday, May 30, 13
  • 91. 테스팅 분산 서버 테스트 동영상이 안 끊긴다. Thursday, May 30, 13
  • 92. 테스트 - 공식 테스트 지표 Hardware: - CPU: Single Dual Core Xeon 5160, 4MB Cache, 3.00 GHz, 1333MHz FSB - Memory: 2GB - Disk IO (streaming disks): 2X 36GB, SAS, 15K RPM Hard Drives, RAID 0 (striping) - Disk IO (OS disk): 1X 250GB, SATA, 7K RPM Hard Drive - Network: Dual 1Gb controller   Software: - OS: Fedora Core 6 - JRE: Sun Java6-Update1   Thursday, May 30, 13
  • 93. 테스트 - 공식 테스트 지표 Video On Demand Test 1 (600 connections, 400 files): - Connections: 700 - Files: 400 (random selection of files) - Video bitrate: 400kbs - Audio bitrate: 96kbs - Overall bitrate per file: ~512kbs (with overhead) - Results: 368Mbs (no connections starved for data) - Memory Usage: 361MB - RTMP: CPU: 14.5% - RTMPE: CPU: 22.6% Video On Demand Test 2 (1800 connections, 1 file): - Connections: 1800 - Files: 1 - Video bitrate: 400kbs - Audio bitrate: 96kbs - Overall bitrate per file: ~512kbs (with overhead) - Results: 900Mbs (no connections starved for data) - Memory Usage: 543MB - RTMP: CPU: 35% Thursday, May 30, 13
  • 94. 테스트 - 공식 테스트 지표 Live Streaming Test 1 (2000 connections, 512kbps On2 Flix Live stream): - Connections: 2000 - Live Video: ~512kbps On2 Flix Live stream - Results: 840Mbs (no connections starved for data) - Memory Usage: 267MB - RTMP: CPU: 21% Thursday, May 30, 13
  • 98. 출처 .stream file http://www.wowza.com/forums/content.php?478-How-to-specify-per-stream-settings-in- stream-files Repeater!! 필수!! http://www.wowza.com/forums/list.php?category/16-Live-Stream-Repeater 자작 VeryVerySimpleHTTPWebServer https://gist.github.com/Hann/0ad5a26f4e56e4d70a2a 자작 VeryVerySimple RTMPDump Code https://gist.github.com/Hann/6e6fd024d03dfe0791f3 HTTP로 사용해야하는 이유 http://helloworld.naver.com/helloworld/7122 Thursday, May 30, 13