분류 전체보기

    왁뮤 3.0 출시 및 장애 대응 기록

    왁뮤 3.0 출시 및 장애 대응 기록

    2024년 9월 7일(토), 왁타버스 뮤직 3.0 출시와 함께 발생한 장애를 포함한 이벤트들을 타임라인 순으로 기록하려고 합니다. 출시 일정우선 출시 계획은 다음과 같았습니다.오후 5시: 서버에서 진입 금지 플래그 설정오후 5시 30분: 앱 배포오후 6시: PV영상 공개 & 서버 진입 금지 플래그 제거컨텐츠 유출을 막기 위해 서버에서 진입 금지 플래그를 설정해두고, 실제 앱 공개시간인 오후 6시로부터 30분 정도 여유를 두고 배포를 누르기로 했습니다.그리고 6시에 PV 영상이 공개됨과 동시에 진입 금지 플래그를 제거해 유저들을 받을 계획이었습니다. 오후 5시 배포 시작완벽한 계획과는 달리 시작부터 문제가 발생했습니다.배포 당일에 계획이 수정되었지만, 예약 출시 시간을 변경하지 않아 5시에 배포가 시작되게..

    UIScene, UIWindowScene, UIWindow

    UIScene, UIWindowScene, UIWindow

    iOS 13 이후 SwiftUI 발표와 함께 아이패드에서 스플릿뷰를 통해 멀티 윈도우를 지원하게 되면서,SceneDelegate, Scene 이란 개념이 생겨났다고만 알고 있었습니다.프로젝트를 할 때마다 window 와 scene에 대한 정확한 개념이 없어서 대충 이런거겠거니.. 하고 사용했었는데, 이번에 제대로 짚고 넘어가보려고 합니다.UIWindow, windowwindow 는 UIWindow의 인스턴스 입니다.window의 역할은 아래와 같습니다.앱에 표시되는(visible) contents를 포함한다.뷰 및 기타 app object에 touch event 전달하는데 중요한 역할을 한다.app의 view controller와 상호작용하여 orientation 변경(화면 회전)을 처리한다.UIKit ..

    IBOutlet과 IBAction

    IBOutlet과 IBAction

    UIKit을 처음 접할 때, 스토리보드는 구닥다리다, 협업에 불편하다 등 악평을 많이 들어 코드베이스로 입문했었습니다. 그리고 이번에 스토리보드를 사용해보게 되었고, 이번 기회에 스토리보드와 코드간의 연결통로? 역할을 해주는 IBAction 과 IBOutlet이 무엇인지 학습해보기로 했습니다.목차IB(Interface Builder)IBOutletIBActionIB(Interface Builder)IBOutlet, IBAction 둘다 앞에 IB 라는 접두사가 붙는데 이게 뭔지 궁금했습니다.IB 는 Interface Builder (인터페이스 빌더) 의 줄임말이고,인터페이스 빌더는Xcode에서 사용자 인터페이스(UI, User Interface)를 만들기 위한 그래픽 환경.The graphical env..

    View(ViewController) Life Cycle

    View(ViewController) Life Cycle

    목차ViewController? UIView?View Life Cycle 이란?실제 결과 확인ViewController? UIView?iOS 앱은 하나 이상의 뷰로 구성되어 있으며, 뷰는 ViewController 위에 있습니다.그리고 ViewController에 UIView 나 UIButton 과 같은 뷰를 올리기 때문에, 대체 뷰 라이프사이클의 뷰는 뭐지? ViewController를 말하는거야? UIView 를 말하는거야? 하고 헷갈리기 쉽습니다.위 계층 구조에서 보이듯이 뷰는 뷰컨트롤러 위에 존재합니다.그리고 뷰컨트롤러는 명칭처럼 뷰를 컨트롤하기 위한 객체일 뿐, Life Cycle에서의 뷰는 ViewController의 View를 칭합니다. 🙂View Life Cycle 이란?위에서 언급했듯이..

    네이버 부스트캠프 웹・모바일 9기 챌린지 과정을 마치며

    네이버 부스트캠프 웹・모바일 9기 챌린지 과정을 마치며

    4주간의 부스트 캠프 챌린지 과정을 마쳤다.그 안에서 뭘 했고, 어떤걸 배우고 느꼈는지, 시작할 때의 생각부터 모두 마치고 난 뒤의 생각 변화까지 시간 순으로 회고해보려고 한다. 메일 한 통2024년 7월 10일, 여느 때와 다름 없이 피쳐들을 쳐내던 하루였다.하지만 슬슬 결과 메일이 올 때가 되었음을 직감하고 코드가 손에 안잡힐 때 쯤, 메일 한 통이 날아왔다.  네이버 부스트캠프 웹・모바일 9기의 진행 순서는 아래와 같이 진행된다.서류1차 문제 해결력 테스트베이직 과정2차 문제 해결력 테스트챌린지 과정3차 문제 해결력 테스트멤버십 과정나는 7월 첫째 주 베이직 과정을 수료하고,7월 6일(토) 2단계 문제 해결력 테스트를 쳤다.그리고 챌린지 과정 합격 메일을 받게 된 것이었다. 챌린지 스타트부스트캠프 ..

    TCP/IP 소켓 통신 개념 및 Network 프레임워크

    TCP/IP 소켓 통신 개념 및 Network 프레임워크

    목차TCP/IP 소켓 통신 이란?소켓이 왜 필요한가소켓(Socket) 이란?소켓 종류스트림 소켓(TCP) 통신 흐름Network 프레임워크현대의 소켓 통신의 문제점기존의 소켓 통신과의 연결 설정 단계 비교기본 객체연결 생명주기소켓이 왜 필요한가먼저 클라이언트-서버 간의 통신을 생각해보자.클라이언트 입장에서는 1:1 통신이지만, 서버 입장에서는 1:N 통신을 수행해야 한다.서버는 트래픽이 증폭해도 이를 견딜 수 있는 견고한 시스템을 구축해야 하는데, 이걸 가능하게 해주는 것이 소켓이다. (실시간 양방향 통신을 가능하게 해주는 WebSocket과는 개념이 다르다.)우선 N명의 클라이언트로부터 요청이 들어올 때, 동시에 요청을 처리할 수 있는 방법은 무엇이 있을까?가장 쉽게 생각할 수 있는 방법으로는 Thre..